Standard metaobject definitions are [metaobject definitions](/docs/apps/build/custom-data/metaobjects/manage-metaobjects) with a specific `type` that we've reserved. Standard metaobject definitions have pre-configured [access grants](/docs/apps/build/custom-data/permissions), a known set of [metaobject fields](/docs/apps/build/custom-data), and preconfigured [capabilities](/docs/apps/build/custom-data/metaobjects/use-metaobject-capabilities). Standards ensure interoperability across the Shopify ecosystem.

> Note:
> The [Shopify standard taxonomy](https://github.com/Shopify/product-taxonomy) is a suite of standard metaobject definitions that's used to store and manage product taxonomy categories and attributes. [Learn how to integrate your app with the Shopify standard product taxonomy](https://github.com/Shopify/product-taxonomy?tab=readme-ov-file#-1-integrators-how-to-integrate-with-the-taxonomy).

The following table lists available standard metaobject definitions:

<table>
<caption>Standard metaobject definitions</caption>
<thead>
  <tr>
    <th scope="col">Name</th>
    <th scope="col">ID</th>
    <th scope="col">Type</th>
    <th scope="col">Details</th>
    <th scope="col">Fields</th>
  </tr>
</thead>
<tbody>
  <tr>
    <td><strong>Early access:</strong> Product Review</td>
    <td><code>2</code></td>
    <td><code>product_review</code></td>
<td>Stores and manages product reviews, including ratings, review content, and associated metadata. <strong>This metaobject definition is early access for select app partners only.</strong></td>
    <td>
      <ul>
        <li>Rating (<code>rating</code>) <span class="heading-flag">Required</span></li>
        <li>Title (<code>single_line_text_field</code>)</li>
        <li>Body (<code>multi_line_text_field</code>)</li>
        <li>Submitted At (<code>date_time</code>) <span class="heading-flag">Required</span></li>
        <li>Edited At (<code>date_time</code>)</li>
        <li>Published At (<code>date_time</code>)</li>
        <li>Source (<code>single_line_text_field</code>)<span class="heading-flag">Required</span></li>
        <li>Author (<code>customer_reference</code>)</li>
        <li>Author display name (<code>single_line_text_field</code>)</li>
        <li>Order (<code>order_reference</code>)</li>
        <li>Product (<code>product_reference</code>)</li>
        <li>Product Variant (<code>variant_reference</code>)</li>
        <li>Merchant Reply (<code>multi_line_text_field</code>)</li>
        <li>Merchant Replied At (<code>date_time</code>)</li>
        <li>Media URLs (<code>list.url</code>)</li>
        <li>Language (<code>language</code>)</li>
        <li>App Verification Status (<code>single_line_text_field</code>)</li>
      </ul>
    </td>
  </tr>
</tbody>
</table>

### Interacting with standard metaobject definitions

You can interact with standard metaobject definitions using GraphQL queries or mutations:

<a name="access-table"></a>

| Action | Query or mutation |
| --- | --- |
| Access standard metaobject definition templates | Use the [standardMetaobjectDefinitionTemplates](/docs/api/admin-graphql/unstable/objects/StandardMetaobjectDefinitionTemplate) query to access standard metaobject definition templates. |
| Access metaobject definition | Use the [metaobjectDefinition](/docs/api/admin-graphql/2024-07/objects/MetaobjectDefinition) query to access a standard metaobject definition. |
| Create a metaobject definition | Use the [standardMetaobjectDefinitionEnable](/docs/api/admin-graphql/unstable/mutations/standardMetaobjectDefinitionEnable) mutation to create a metaobject definition using one of the standard metaobject definition templates. To specify the template you want to use, provide the ID for the template in the format `gid://shopify/StandardMetaobjectDefinitionTemplate/<id>`, where `id` is the corresponding ID value from the table. |
| Delete a metaobject definition | Use the [metaobjectDefinitionDelete](/docs/api/admin-graphql/unstable/mutations/metaobjectDefinitionDelete) mutation to delete a metaobject definition. |