--- 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/2025-04/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/2025-04/objects/Metaobject#field-Metaobject.fields.seo) field provides SEO metadata. If it has the `online_store` capability, then the [`onlineStoreUrl`](/docs/api/storefront/2025-04/objects/Metaobject#field-Metaobject.fields.onlineStoreUrl) field returns the public URL. api_version: 2025-04 api_name: storefront type: object api_type: graphql source_url: html: https://shopify.dev/docs/api/storefront/2025-04/objects/metaobject md: https://shopify.dev/docs/api/storefront/2025-04/objects/metaobject.md --- # 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/2025-04/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/2025-04/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/2025-04/objects/Metaobject#field-Metaobject.fields.onlineStoreUrl) field returns the public URL. ## Fields * field [Metaobject​Field](https://shopify.dev/docs/api/storefront/2025-04/objects/MetaobjectField) Accesses a field of the object by key. * key [String!](https://shopify.dev/docs/api/storefront/2025-04/scalars/String) required ### Arguments The key of the field. *** * fields [\[Metaobject​Field!\]!](https://shopify.dev/docs/api/storefront/2025-04/objects/MetaobjectField) non-null 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/2025-04/scalars/String) non-null The unique handle of the metaobject. Useful as a custom ID. * id [ID!](https://shopify.dev/docs/api/storefront/2025-04/scalars/ID) non-null A globally-unique ID. * online​Store​Url [URL](https://shopify.dev/docs/api/storefront/2025-04/scalars/URL) 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/2025-04/objects/MetaobjectSEO) 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/2025-04/scalars/String) non-null The type of the metaobject. * updated​At [Date​Time!](https://shopify.dev/docs/api/storefront/2025-04/scalars/DateTime) non-null 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/2025-04/connections/MetaobjectConnection#returns-nodes) * [MetaobjectEdge.node](https://shopify.dev/docs/api/storefront/2025-04/objects/MetaobjectEdge#field-MetaobjectEdge.fields.node) ### Possible type in * [Menu​Item​Resource](https://shopify.dev/docs/api/storefront/2025-04/unions/MenuItemResource) * [Metafield​Reference](https://shopify.dev/docs/api/storefront/2025-04/unions/MetafieldReference) *** ## Queries * [metaobject](https://shopify.dev/docs/api/storefront/2025-04/queries/metaobject) query Retrieves a single [`Metaobject`](https://shopify.dev/docs/api/storefront/2025-04/objects/Metaobject) by either its [`global ID`](https://shopify.dev/docs/api/storefront/2025-04/queries/metaobject#arguments-id) or its [`handle`](https://shopify.dev/docs/api/storefront/2025-04/queries/metaobject#arguments-handle). *** **Note:** When using the handle, you must also provide the metaobject type because handles are only unique within a type. *** * id [ID](https://shopify.dev/docs/api/storefront/2025-04/scalars/ID) ### Arguments The ID of the metaobject. * handle [Metaobject​Handle​Input](https://shopify.dev/docs/api/storefront/2025-04/input-objects/MetaobjectHandleInput) The handle and type of the metaobject. *** * [metaobjects](https://shopify.dev/docs/api/storefront/2025-04/queries/metaobjects) query Returns a paginated list of [`Metaobject`](https://shopify.dev/docs/api/storefront/2025-04/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. * type [String!](https://shopify.dev/docs/api/storefront/2025-04/scalars/String) required ### Arguments The type of metaobject to retrieve. * sort​Key [String](https://shopify.dev/docs/api/storefront/2025-04/scalars/String) The key of a field to sort with. Supports "id" and "updated\_at". * first [Int](https://shopify.dev/docs/api/storefront/2025-04/scalars/Int) Returns up to the first `n` elements from the list. * after [String](https://shopify.dev/docs/api/storefront/2025-04/scalars/String) Returns the elements that come after the specified cursor. * last [Int](https://shopify.dev/docs/api/storefront/2025-04/scalars/Int) Returns up to the last `n` elements from the list. * before [String](https://shopify.dev/docs/api/storefront/2025-04/scalars/String) Returns the elements that come before the specified cursor. * reverse [Boolean](https://shopify.dev/docs/api/storefront/2025-04/scalars/Boolean) Default:false Reverse the order of the underlying list. *** *** ## Metaobject Queries ### Queried by * [metaobject](https://shopify.dev/docs/api/storefront/2025-04/queries/metaobject) * [metaobjects](https://shopify.dev/docs/api/storefront/2025-04/queries/metaobjects) *** ## Interfaces * * [Node](https://shopify.dev/docs/api/storefront/2025-04/interfaces/Node) interface * [Online​Store​Publishable](https://shopify.dev/docs/api/storefront/2025-04/interfaces/OnlineStorePublishable) interface *** ## Metaobject Implements ### Implements * [Node](https://shopify.dev/docs/api/storefront/2025-04/interfaces/Node) * [Online​Store​Publishable](https://shopify.dev/docs/api/storefront/2025-04/interfaces/OnlineStorePublishable)