---
title: MetafieldDefinition
description: >-
  Subscribe to field-level changes on the MetafieldDefinition GraphQL Admin API
  object.
api_version: 2026-10
source_url:
  html: 'https://shopify.dev/docs/api/events/latest/metafield-definition'
  md: 'https://shopify.dev/docs/api/events/latest/metafield-definition.md'
api_name: events
---

# Metafield​Definition

**Requires `read_content` access scope.:**

Supported [actions](https://shopify.dev/docs/apps/build/events/subscribe#actions): `create`, `update`, `delete`

Subscribe to field-level changes on the [`MetafieldDefinition`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition) GraphQL Admin API object.

Each [topic](https://shopify.dev/docs/api/events/latest#configuration) corresponds to a commerce resource that can exist independently within its domain. Child entities that depend on a parent within the same domain don't have their own topic. Instead, changes to child entities trigger a delivery on the parent topic. Calculated fields, derived fields, auto-updated timestamps, and cross-domain fields aren't available as triggers.

## shopify.app.toml

```toml
[events]
api_version = "2026-10"


[[events.subscription]]
handle = "my_metafield-definition_event"


topic = "MetafieldDefinition"
actions = ["update"]
triggers = ["metafieldDefinition.access.*"]


uri = "https://your-app.com/events"


query = """
query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
  metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
    id
    name
    access {
      __typename
    }
  }
}
"""
```

***

## Supported triggers

Field-level [triggers](https://shopify.dev/docs/api/events/latest#configuration) for `MetafieldDefinition` subscriptions.

All triggers require the `read_content` access scope. Those triggers that require additional scopes are documented where relevant. Deprecated triggers are listed last.

Subscriptions can include multiple triggers. Use the `shopify-webhook-id` header for deduplication when handling duplicate deliveries.

Custom queries aren't limited to [`MetafieldDefinition`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition). They can query the full GraphQL Admin API.

### metafieldDefinition​.\*[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition)

Fires when events involve the [`MetafieldDefinition`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition) object.

The `"create"` and `"delete"` actions are only relevant within the context of this parent topic. Use `fields_changed` to follow or replicate impacted data after a delete event. Define a custom query to retrieve specific fields from create events.

`metafieldDefinition.*` is a parent trigger. Subscribing with the `"update"` action receives events for all supported triggers under `metafieldDefinition`, including nested triggers. Use a more specific trigger to limit events to the fields you need.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.access​.\*[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition#field-MetafieldDefinition.fields.access)

Fires when the [`access`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition#field-MetafieldDefinition.fields.access) field on the [`MetafieldDefinition`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition) object changes.

`metafieldDefinition.access.*` is a parent trigger. Subscribing with the `"update"` action receives events for all supported triggers under `metafieldDefinition.access`, including nested triggers. Use a more specific trigger to limit events to the fields you need.

Include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

The `access` field represents the access settings associated with the metafield definition.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.access​.admin[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldAccess#field-MetafieldAccess.fields.admin)

Fires when the [`admin`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldAccess#field-MetafieldAccess.fields.admin) field on the [`MetafieldAccess`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldAccess) object changes.

Subscribe to this trigger with the `"update"` action and include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

The `admin` field represents the access permitted on the Admin API.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.access​.customerAccount[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldAccess#field-MetafieldAccess.fields.customerAccount)

Fires when the [`customerAccount`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldAccess#field-MetafieldAccess.fields.customerAccount) field on the [`MetafieldAccess`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldAccess) object changes.

Subscribe to this trigger with the `"update"` action and include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

The `customerAccount` field represents the access permitted on the Customer Account API.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.access​.storefront[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldAccess#field-MetafieldAccess.fields.storefront)

Fires when the [`storefront`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldAccess#field-MetafieldAccess.fields.storefront) field on the [`MetafieldAccess`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldAccess) object changes.

Subscribe to this trigger with the `"update"` action and include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

The `storefront` field represents the access permitted on the Storefront API.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.capabilities​.\*[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition#field-MetafieldDefinition.fields.capabilities)

Fires when the [`capabilities`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition#field-MetafieldDefinition.fields.capabilities) field on the [`MetafieldDefinition`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition) object changes.

`metafieldDefinition.capabilities.*` is a parent trigger. Subscribing with the `"update"` action receives events for all supported triggers under `metafieldDefinition.capabilities`, including nested triggers. Use a more specific trigger to limit events to the fields you need.

Include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

The `capabilities` field represents the capabilities of the metafield definition.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.capabilities​.adminFilterable​.\*[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilities#field-MetafieldCapabilities.fields.adminFilterable)

Fires when the [`adminFilterable`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilities#field-MetafieldCapabilities.fields.adminFilterable) field on the [`MetafieldCapabilities`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilities) object changes.

`metafieldDefinition.capabilities.adminFilterable.*` is a parent trigger. Subscribing with the `"update"` action receives events for all supported triggers under `metafieldDefinition.capabilities.adminFilterable`, including nested triggers. Use a more specific trigger to limit events to the fields you need.

Include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

Indicate whether a metafield definition is configured for filtering.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.capabilities​.adminFilterable​.enabled[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilityAdminFilterable#field-MetafieldCapabilityAdminFilterable.fields.enabled)

Fires when the [`enabled`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilityAdminFilterable#field-MetafieldCapabilityAdminFilterable.fields.enabled) field on the [`MetafieldCapabilityAdminFilterable`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilityAdminFilterable) object changes.

Subscribe to this trigger with the `"update"` action and include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

Indicates if the capability is enabled.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.capabilities​.adminFilterable​.status[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilityAdminFilterable#field-MetafieldCapabilityAdminFilterable.fields.status)

Fires when the [`status`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilityAdminFilterable#field-MetafieldCapabilityAdminFilterable.fields.status) field on the [`MetafieldCapabilityAdminFilterable`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilityAdminFilterable) object changes.

Subscribe to this trigger with the `"update"` action and include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

Determines the metafield definition's filter status for use in admin filtering.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.capabilities​.analyticsQueryable​.\*[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilities#field-MetafieldCapabilities.fields.analyticsQueryable)

Fires when the [`analyticsQueryable`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilities#field-MetafieldCapabilities.fields.analyticsQueryable) field on the [`MetafieldCapabilities`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilities) object changes.

`metafieldDefinition.capabilities.analyticsQueryable.*` is a parent trigger. Subscribing with the `"update"` action receives events for all supported triggers under `metafieldDefinition.capabilities.analyticsQueryable`, including nested triggers. Use a more specific trigger to limit events to the fields you need.

Include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

Indicate whether a metafield definition can be queried in analytics.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.capabilities​.analyticsQueryable​.enabled[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilityAnalyticsQueryable#field-MetafieldCapabilityAnalyticsQueryable.fields.enabled)

Fires when the [`enabled`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilityAnalyticsQueryable#field-MetafieldCapabilityAnalyticsQueryable.fields.enabled) field on the [`MetafieldCapabilityAnalyticsQueryable`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilityAnalyticsQueryable) object changes.

Subscribe to this trigger with the `"update"` action and include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

Indicates if the capability is enabled.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.capabilities​.cartToOrderCopyable​.\*[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilities#field-MetafieldCapabilities.fields.cartToOrderCopyable)

Fires when the [`cartToOrderCopyable`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilities#field-MetafieldCapabilities.fields.cartToOrderCopyable) field on the [`MetafieldCapabilities`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilities) object changes.

`metafieldDefinition.capabilities.cartToOrderCopyable.*` is a parent trigger. Subscribing with the `"update"` action receives events for all supported triggers under `metafieldDefinition.capabilities.cartToOrderCopyable`, including nested triggers. Use a more specific trigger to limit events to the fields you need.

Include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

The `cartToOrderCopyable` field represents the capability configuration for automatically copying values from a cart metafield to the corresponding order metafield when an order is created.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.capabilities​.cartToOrderCopyable​.enabled[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilityCartToOrderCopyable#field-MetafieldCapabilityCartToOrderCopyable.fields.enabled)

Fires when the [`enabled`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilityCartToOrderCopyable#field-MetafieldCapabilityCartToOrderCopyable.fields.enabled) field on the [`MetafieldCapabilityCartToOrderCopyable`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilityCartToOrderCopyable) object changes.

Subscribe to this trigger with the `"update"` action and include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

Indicates if the capability is enabled.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.capabilities​.smartCollectionCondition​.\*[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilities#field-MetafieldCapabilities.fields.smartCollectionCondition)

Fires when the [`smartCollectionCondition`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilities#field-MetafieldCapabilities.fields.smartCollectionCondition) field on the [`MetafieldCapabilities`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilities) object changes.

`metafieldDefinition.capabilities.smartCollectionCondition.*` is a parent trigger. Subscribing with the `"update"` action receives events for all supported triggers under `metafieldDefinition.capabilities.smartCollectionCondition`, including nested triggers. Use a more specific trigger to limit events to the fields you need.

Include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

Indicate whether a metafield definition can be used as a smart collection condition.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.capabilities​.smartCollectionCondition​.enabled[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilitySmartCollectionCondition#field-MetafieldCapabilitySmartCollectionCondition.fields.enabled)

Fires when the [`enabled`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilitySmartCollectionCondition#field-MetafieldCapabilitySmartCollectionCondition.fields.enabled) field on the [`MetafieldCapabilitySmartCollectionCondition`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilitySmartCollectionCondition) object changes.

Subscribe to this trigger with the `"update"` action and include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

Indicates if the capability is enabled.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.capabilities​.uniqueValues​.\*[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilities#field-MetafieldCapabilities.fields.uniqueValues)

Fires when the [`uniqueValues`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilities#field-MetafieldCapabilities.fields.uniqueValues) field on the [`MetafieldCapabilities`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilities) object changes.

`metafieldDefinition.capabilities.uniqueValues.*` is a parent trigger. Subscribing with the `"update"` action receives events for all supported triggers under `metafieldDefinition.capabilities.uniqueValues`, including nested triggers. Use a more specific trigger to limit events to the fields you need.

Include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

Indicate whether the metafield values for a metafield definition are required to be unique.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.capabilities​.uniqueValues​.enabled[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilityUniqueValues#field-MetafieldCapabilityUniqueValues.fields.enabled)

Fires when the [`enabled`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilityUniqueValues#field-MetafieldCapabilityUniqueValues.fields.enabled) field on the [`MetafieldCapabilityUniqueValues`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldCapabilityUniqueValues) object changes.

Subscribe to this trigger with the `"update"` action and include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

Indicates if the capability is enabled.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.constraints[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition#field-MetafieldDefinition.fields.constraints)

Fires when the [`constraints`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition#field-MetafieldDefinition.fields.constraints) field on the [`MetafieldDefinition`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition) object changes.

Subscribe to this trigger with the `"update"` action and include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

The `constraints` field represents the constraints that determine what subtypes of resources a metafield definition applies to.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.description[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition#field-MetafieldDefinition.fields.description)

Fires when the [`description`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition#field-MetafieldDefinition.fields.description) field on the [`MetafieldDefinition`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition) object changes.

Subscribe to this trigger with the `"update"` action and include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

The `description` field represents the description of the metafield definition.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.name[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition#field-MetafieldDefinition.fields.name)

Fires when the [`name`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition#field-MetafieldDefinition.fields.name) field on the [`MetafieldDefinition`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition) object changes.

Subscribe to this trigger with the `"update"` action and include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

The `name` field represents the human-readable name of the metafield definition.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.pinnedPosition[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition#field-MetafieldDefinition.fields.pinnedPosition)

Fires when the [`pinnedPosition`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition#field-MetafieldDefinition.fields.pinnedPosition) field on the [`MetafieldDefinition`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition) object changes.

Subscribe to this trigger with the `"update"` action and include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

The `pinnedPosition` field represents the position of the metafield definition in the pinned list.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.validationStatus[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition#field-MetafieldDefinition.fields.validationStatus)

Fires when the [`validationStatus`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition#field-MetafieldDefinition.fields.validationStatus) field on the [`MetafieldDefinition`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition) object changes.

Subscribe to this trigger with the `"update"` action and include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

The `validationStatus` field represents the validation status for the metafields that belong to the metafield definition.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### metafieldDefinition​.validations[](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition#field-MetafieldDefinition.fields.validations)

Fires when the [`validations`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition#field-MetafieldDefinition.fields.validations) field on the [`MetafieldDefinition`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/MetafieldDefinition) object changes.

Subscribe to this trigger with the `"update"` action and include the field in a custom `query` to retrieve updated data from the payload. You can trace the field in subsequent requests using `fields_changed`.

The `validations` field contains a list of validation options for the metafields that belong to the metafield definition.

**Variables:** `metafieldDefinitionKey`, `metafieldDefinitionNamespace`, `metafieldDefinitionOwnerType`

### Examples

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["create","update","delete"]
  triggers = ["metafieldDefinition.*"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_details($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
    }
  }
  """
  ```

  ##### Payload (added)

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "create",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition"
      }
    },
    "fields_changed": {
      "added": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating']"
      ],
      "updated": [],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Payload (updated)

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition"
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].access.admin"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Payload (removed)

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "delete",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": null
    },
    "fields_changed": {
      "added": [],
      "updated": [],
      "removed": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating']"
      ]
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update # or create, delete
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.access.*"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      access {
        __typename
      }
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "access": {
          "__typename": "MetafieldAccess"
        }
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].access.admin"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.access.admin"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      access {
        admin
      }
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "access": {
          "admin": "…"
        }
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].access.admin"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.access.customerAccount"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      access {
        customerAccount
      }
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "access": {
          "customerAccount": "…"
        }
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].access.customerAccount"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.access.storefront"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      access {
        storefront
      }
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "access": {
          "storefront": "…"
        }
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].access.storefront"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.capabilities.*"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      capabilities {
        __typename
      }
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "capabilities": {
          "__typename": "MetafieldCapabilities"
        }
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].capabilities.adminFilterable.enabled"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.capabilities.adminFilterable.*"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      capabilities {
        adminFilterable {
          __typename
        }
      }
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "capabilities": {
          "adminFilterable": {
            "__typename": "MetafieldCapabilityAdminFilterable"
          }
        }
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].capabilities.adminFilterable.enabled"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.capabilities.adminFilterable.enabled"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      capabilities {
        adminFilterable {
          enabled
        }
      }
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "capabilities": {
          "adminFilterable": {
            "enabled": "…"
          }
        }
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].capabilities.adminFilterable.enabled"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.capabilities.adminFilterable.status"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      capabilities {
        adminFilterable {
          status
        }
      }
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "capabilities": {
          "adminFilterable": {
            "status": "…"
          }
        }
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].capabilities.adminFilterable.status"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.capabilities.analyticsQueryable.*"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      capabilities {
        analyticsQueryable {
          __typename
        }
      }
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "capabilities": {
          "analyticsQueryable": {
            "__typename": "MetafieldCapabilityAnalyticsQueryable"
          }
        }
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].capabilities.analyticsQueryable.enabled"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.capabilities.analyticsQueryable.enabled"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      capabilities {
        analyticsQueryable {
          enabled
        }
      }
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "capabilities": {
          "analyticsQueryable": {
            "enabled": "…"
          }
        }
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].capabilities.analyticsQueryable.enabled"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.capabilities.cartToOrderCopyable.*"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      capabilities {
        cartToOrderCopyable {
          __typename
        }
      }
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "capabilities": {
          "cartToOrderCopyable": {
            "__typename": "MetafieldCapabilityCartToOrderCopyable"
          }
        }
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].capabilities.cartToOrderCopyable.enabled"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.capabilities.cartToOrderCopyable.enabled"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      capabilities {
        cartToOrderCopyable {
          enabled
        }
      }
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "capabilities": {
          "cartToOrderCopyable": {
            "enabled": "…"
          }
        }
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].capabilities.cartToOrderCopyable.enabled"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.capabilities.smartCollectionCondition.*"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      capabilities {
        smartCollectionCondition {
          __typename
        }
      }
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "capabilities": {
          "smartCollectionCondition": {
            "__typename": "MetafieldCapabilitySmartCollectionCondition"
          }
        }
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].capabilities.smartCollectionCondition.enabled"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.capabilities.smartCollectionCondition.enabled"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      capabilities {
        smartCollectionCondition {
          enabled
        }
      }
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "capabilities": {
          "smartCollectionCondition": {
            "enabled": "…"
          }
        }
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].capabilities.smartCollectionCondition.enabled"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.capabilities.uniqueValues.*"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      capabilities {
        uniqueValues {
          __typename
        }
      }
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "capabilities": {
          "uniqueValues": {
            "__typename": "MetafieldCapabilityUniqueValues"
          }
        }
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].capabilities.uniqueValues.enabled"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.capabilities.uniqueValues.enabled"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      capabilities {
        uniqueValues {
          enabled
        }
      }
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "capabilities": {
          "uniqueValues": {
            "enabled": "…"
          }
        }
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].capabilities.uniqueValues.enabled"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.constraints"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      constraints {
        __typename
      }
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "constraints": {
          "__typename": "MetafieldDefinitionConstraints"
        }
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].constraints"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.description"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      description
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "description": "<p>Example</p>"
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].description"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.name"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition"
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].name"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.pinnedPosition"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      pinnedPosition
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "pinnedPosition": "…"
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].pinnedPosition"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.validationStatus"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      validationStatus
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "validationStatus": "…"
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].validationStatus"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

* #### Subscribe via app configuration

  ##### shopify.app.toml

  ```toml
  [events]
  api_version = "2026-10"

  [[events.subscription]]
  handle = "metafieldDefinition-event"

  topic = "MetafieldDefinition"
  actions = ["update"]
  triggers = ["metafieldDefinition.validations"]

  uri = "https://your-app.com/events"

  query = """
  query metafieldDefinition_event_payload($metafieldDefinitionKey: String!, $metafieldDefinitionNamespace: String!) {
    metafieldDefinition(identifier: {key: $metafieldDefinitionKey, namespace: $metafieldDefinitionNamespace, ownerType: PRODUCT}) {
      id
      name
      validations {
        __typename
      }
    }
  }
  """
  ```

  ##### Payload

  ```json
  {
    "topic": "MetafieldDefinition",
    "action": "update",
    "handle": "metafieldDefinition-event",
    "data": {
      "metafieldDefinition": {
        "id": "gid://shopify/MetafieldDefinition/123",
        "name": "Example metafielddefinition",
        "validations": [
          {
            "__typename": "MetafieldDefinitionValidation"
          }
        ]
      }
    },
    "fields_changed": {
      "added": [],
      "updated": [
        "metafieldDefinition[ownerType: 'Product', namespace: 'custom', key: 'rating'].validations"
      ],
      "removed": []
    },
    "query_variables": {
      "metafieldDefinitionKey": "rating",
      "metafieldDefinitionNamespace": "custom",
      "metafieldDefinitionOwnerType": "Product"
    }
  }
  ```

  ##### Headers

  ```bash
  shopify-action: update
  shopify-api-version: 2026-10
  shopify-handle: metafieldDefinition-event
  shopify-hmac-sha256: 61lWIGuA2nXdHRjhMU/+EDw2y3Eg0mPKJ+RhR7dKKIM=
  shopify-shop-domain: your-shop.myshopify.com
  shopify-topic: MetafieldDefinition
  shopify-triggered-at: 2026-03-23T16:24:35.267Z
  shopify-webhook-id: 7613956a-18a5-332d-b71e-e164bbcacdba
  ```

***
