---
title: Metaobject - Storefront API
description: >-
  An instance of [custom structured

  data](https://shopify.dev/docs/apps/build/metaobjects) defined by a metaobject

  definition. Metaobjects store reusable content that extends beyond standard

  Shopify resources, such as size charts, author profiles, or custom content
  sections.


  Each metaobject contains fields that match the types and validation rules

  specified in its definition.

  [`Metafield`](/docs/api/storefront/2026-10/objects/Metafield)

  references can point to metaobjects, connecting custom data with products,

  collections, and other resources. If the definition has the `renderable`

  capability, then the
  [`seo`](/docs/api/storefront/2026-10/objects/Metaobject#field-Metaobject.fields.seo)

  field provides SEO metadata. If it has the `online_store` capability, then the
  [`onlineStoreUrl`](/docs/api/storefront/2026-10/objects/Metaobject#field-Metaobject.fields.onlineStoreUrl)

  field returns the public URL.
api_version: 2026-10
source_url:
  html: 'https://shopify.dev/docs/api/storefront/latest/objects/Metaobject'
  md: 'https://shopify.dev/docs/api/storefront/latest/objects/Metaobject.md'
api_name: storefront
api_type: graphql
type: object
---

# Metaobject

object

Requires `unauthenticated_read_metaobjects` access scope.

An instance of [custom structured data](https://shopify.dev/docs/apps/build/metaobjects) defined by a metaobject definition. Metaobjects store reusable content that extends beyond standard Shopify resources, such as size charts, author profiles, or custom content sections.

Each metaobject contains fields that match the types and validation rules specified in its definition. [`Metafield`](https://shopify.dev/docs/api/storefront/2026-10/objects/Metafield) references can point to metaobjects, connecting custom data with products, collections, and other resources. If the definition has the `renderable` capability, then the [`seo`](https://shopify.dev/docs/api/storefront/2026-10/objects/Metaobject#field-Metaobject.fields.seo) field provides SEO metadata. If it has the `online_store` capability, then the [`onlineStoreUrl`](https://shopify.dev/docs/api/storefront/2026-10/objects/Metaobject#field-Metaobject.fields.onlineStoreUrl) field returns the public URL.

## Fields

* field

  [Metaobject​Field](https://shopify.dev/docs/api/storefront/latest/objects/MetaobjectField)

  Token access required

  Accesses a field of the object by key.

  * key

    [String!](https://shopify.dev/docs/api/storefront/latest/scalars/String)

    required

    ### Arguments

    The key of the field.

  ***

* fields

  [\[Metaobject​Field!\]!](https://shopify.dev/docs/api/storefront/latest/objects/MetaobjectField)

  non-null Token access required

  All object fields with defined values. Omitted object keys can be assumed null, and no guarantees are made about field order.

* handle

  [String!](https://shopify.dev/docs/api/storefront/latest/scalars/String)

  non-null Token access required

  The unique handle of the metaobject. Useful as a custom ID.

* id

  [ID!](https://shopify.dev/docs/api/storefront/latest/scalars/ID)

  non-null Token access required

  A globally-unique ID.

* online​Store​Url

  [URL](https://shopify.dev/docs/api/storefront/latest/scalars/URL)

  Token access required

  The URL used for viewing the metaobject on the shop's Online Store. Returns `null` if the metaobject definition doesn't have the `online_store` capability.

* seo

  [Metaobject​SEO](https://shopify.dev/docs/api/storefront/latest/objects/MetaobjectSEO)

  Token access required

  The metaobject's SEO information. Returns `null` if the metaobject definition doesn't have the `renderable` capability.

* type

  [String!](https://shopify.dev/docs/api/storefront/latest/scalars/String)

  non-null Token access required

  The type of the metaobject.

* updated​At

  [Date​Time!](https://shopify.dev/docs/api/storefront/latest/scalars/DateTime)

  non-null Token access required

  The date and time when the metaobject was last updated.

***

## Map

### Fields and connections with this object

* [MetaobjectConnection.nodes](https://shopify.dev/docs/api/storefront/latest/connections/MetaobjectConnection#returns-nodes)
* [MetaobjectEdge.node](https://shopify.dev/docs/api/storefront/latest/objects/MetaobjectEdge#field-MetaobjectEdge.fields.node)

### Possible type in

* [Menu​Item​Resource](https://shopify.dev/docs/api/storefront/latest/unions/MenuItemResource)
* [Metafield​Reference](https://shopify.dev/docs/api/storefront/latest/unions/MetafieldReference)

***

## Queries

* [metaobject](https://shopify.dev/docs/api/storefront/latest/queries/metaobject)

  query

  Retrieves a single [`Metaobject`](https://shopify.dev/docs/api/storefront/2026-10/objects/Metaobject) by either its [`global ID`](https://shopify.dev/docs/api/storefront/2026-10/queries/metaobject#arguments-id) or its [`handle`](https://shopify.dev/docs/api/storefront/2026-10/queries/metaobject#arguments-handle).

  ***

  **Note:** When using the handle, you must also provide the metaobject type because handles are only unique within a type.

  ***

  * handle

    [Metaobject​Handle​Input](https://shopify.dev/docs/api/storefront/latest/input-objects/MetaobjectHandleInput)

    ### Arguments

    The handle and type of the metaobject.

  * id

    [ID](https://shopify.dev/docs/api/storefront/latest/scalars/ID)

    The ID of the metaobject.

  ***

* [metaobjects](https://shopify.dev/docs/api/storefront/latest/queries/metaobjects)

  query

  Returns a paginated list of [`Metaobject`](https://shopify.dev/docs/api/storefront/2026-10/objects/Metaobject) entries for a specific type. Metaobjects are [custom data structures](https://shopify.dev/docs/apps/build/metaobjects) that extend Shopify's data model with merchant-defined or app-defined content like size charts, product highlights, or custom sections.

  The required `type` argument specifies which metaobject type to retrieve. You can sort results by `id` or `updated_at` using the `sortKey` argument.

  * after

    [String](https://shopify.dev/docs/api/storefront/latest/scalars/String)

    ### Arguments

    Returns the elements that come after the specified cursor.

  * before

    [String](https://shopify.dev/docs/api/storefront/latest/scalars/String)

    Returns the elements that come before the specified cursor.

  * first

    [Int](https://shopify.dev/docs/api/storefront/latest/scalars/Int)

    Returns up to the first `n` elements from the list.

  * last

    [Int](https://shopify.dev/docs/api/storefront/latest/scalars/Int)

    Returns up to the last `n` elements from the list.

  * reverse

    [Boolean](https://shopify.dev/docs/api/storefront/latest/scalars/Boolean)

    Default:false

    Reverse the order of the underlying list.

  * sort​Key

    [String](https://shopify.dev/docs/api/storefront/latest/scalars/String)

    The key of a field to sort with. Supports "id" and "updated\_at".

  * type

    [String!](https://shopify.dev/docs/api/storefront/latest/scalars/String)

    required

    The type of metaobject to retrieve.

  ***

***

## Metaobject Queries

### Queried by

* [metaobject](https://shopify.dev/docs/api/storefront/latest/queries/metaobject)
* [metaobjects](https://shopify.dev/docs/api/storefront/latest/queries/metaobjects)

***

## Interfaces

* * [Node](https://shopify.dev/docs/api/storefront/latest/interfaces/Node)

    interface

  * [Online​Store​Publishable](https://shopify.dev/docs/api/storefront/latest/interfaces/OnlineStorePublishable)

    interface

***

## Metaobject Implements

### Implements

* [Node](https://shopify.dev/docs/api/storefront/latest/interfaces/Node)
* [Online​Store​Publishable](https://shopify.dev/docs/api/storefront/latest/interfaces/OnlineStorePublishable)
