Skip to main content

New translatable boolean field for Metafield GraphQL Object

API version 2026-10 adds a non-null translatable field to the Metafield object in the GraphQL Admin API. Apps that fetch translatable metafields and migrate to 2026-10 can now see whether a metafield’s value is translatable directly on the metafield itself. If your app doesn’t query for translatable metafields by shop, you don’t need to change anything.

What changed

The Metafield object in the GraphQL Admin API exposes a new non-null field, translatable: Boolean!, in API version 2026-10:

{
product(id: "gid://shopify/Product/1") {
metafield(namespace: "custom", key: "care_guide") {
type # "single_line_text_field"
translatable # true
}
}
}

translatable returns the result that the platform already enforces when it decides whether a metafield’s value can be translated.

Before this change, apps had to use the deprecated TranslatableResourceType.METAFIELD enum on translatableResources to query for translatable metafields. On API version 2026-10 and later, you should read translatable on the Metafield object instead of querying metafields through translatableResources.

Who's affected

This applies to apps that:

  • Call the GraphQL Admin API on version 2026-10 or later, and
  • Fetch translatable metafields

Apps on version 2026-07 and earlier are unaffected. translatable isn’t available on those versions, and TranslatableResourceType.METAFIELD continues to exist there as deprecated.

Apps that read metafield values without regard to translatability are unaffected on every version.

This change introduces no feature preview and no new access scope. Availability depends only on the API version, so the field appears as soon as you move a request to 2026-10.

Why this matters

Apps need to move away from using the TranslatableResourceType.METAFIELD enum on translatableResources to fetch translatable metafields.

Before this change, deciding whether a metafield can be translated required a list of which metafield types are translatable. Apps also had to keep that logic in sync with the platform.

translatable collapses those rules into one boolean. Because the field resolves from the platform’s own predicate rather than a copy of the rules in your app, it stays correct when translatability rules change.

What to do

If your app doesn’t look up translatable metafields by shop, you don’t need to change anything when you migrate to 2026-10.

If it does, then when you migrate to 2026-10:

  1. Check whether you call translatableResources with TranslatableResourceType.METAFIELD in the top-level resourceType argument.
  2. Update those queries to read the translatable field directly on Metafield objects instead of classifying metafields through translatableResources.
  3. Test your changes on a development store using API version 2026-10 and confirm that:
    • Queries that previously passed TranslatableResourceType.METAFIELD no longer runs in your app, and
    • Your UI uses the metafield.translatable value to decide when to offer translation.

For a worked migration example, see the guide on migrating metafield translation logic from TranslatableResourceType.METAFIELD to Metafield.translatable.

Related docs

Was this page helpful?