Anchor to section titled 'undefined'

metaobjectCreate
mutation

Requires write_metaobjects access scope.

Creates a new metaobject.


The parameters for the metaobject to create.


Was this section helpful?

The created metaobject.

The list of errors that occurred from executing the mutation.


Was this section helpful?

Examples

Hide code
DescriptionCopy
mutation CreateMetaobject($metaobject: MetaobjectCreateInput!) {
  metaobjectCreate(metaobject: $metaobject) {
    metaobject {
      handle
      season: field(key: "season") {
        value
      }
    }
    userErrors {
      field
      message
      code
    }
  }
}
curl -X POST \
https://your-development-store.myshopify.com/admin/api/2024-01/graphql.json \
-H 'Content-Type: application/json' \
-H 'X-Shopify-Access-Token: {access_token}' \
-d '{
"query": "mutation CreateMetaobject($metaobject: MetaobjectCreateInput!) { metaobjectCreate(metaobject: $metaobject) { metaobject { handle season: field(key: \"season\") { value } } userErrors { field message code } } }",
 "variables": {
    "metaobject": {
      "type": "lookbook",
      "handle": "winter-2023",
      "fields": [
        {
          "key": "season",
          "value": "winter"
        }
      ]
    }
  }
}'
const { admin } = await authenticate.admin(request);

const response = await admin.graphql(
  `#graphql
  mutation CreateMetaobject($metaobject: MetaobjectCreateInput!) {
    metaobjectCreate(metaobject: $metaobject) {
      metaobject {
        handle
        season: field(key: "season") {
          value
        }
      }
      userErrors {
        field
        message
        code
      }
    }
  }`,
  {
    variables: {
      "metaobject": {
        "type": "lookbook",
        "handle": "winter-2023",
        "fields": [
          {
            "key": "season",
            "value": "winter"
          }
        ]
      }
    },
  },
);

const data = await response.json();
session = ShopifyAPI::Auth::Session.new(
  shop: "your-development-store.myshopify.com",
  access_token: access_token
)
client = ShopifyAPI::Clients::Graphql::Admin.new(
  session: session
)

query = <<~QUERY
  mutation CreateMetaobject($metaobject: MetaobjectCreateInput!) {
    metaobjectCreate(metaobject: $metaobject) {
      metaobject {
        handle
        season: field(key: "season") {
          value
        }
      }
      userErrors {
        field
        message
        code
      }
    }
  }
QUERY

variables = {
  "metaobject": {
    "type": "lookbook",
    "handle": "winter-2023",
    "fields": [{"key"=>"season", "value"=>"winter"}]
  }
}

response = client.query(query: query, variables: variables)
const client = new shopify.clients.Graphql({session});
const data = await client.query({
  data: {
    "query": `mutation CreateMetaobject($metaobject: MetaobjectCreateInput!) {
      metaobjectCreate(metaobject: $metaobject) {
        metaobject {
          handle
          season: field(key: "season") {
            value
          }
        }
        userErrors {
          field
          message
          code
        }
      }
    }`,
    "variables": {
      "metaobject": {
        "type": "lookbook",
        "handle": "winter-2023",
        "fields": [
          {
            "key": "season",
            "value": "winter"
          }
        ]
      }
    },
  },
});
use Shopify\Clients\Graphql;

$client = new Graphql("your-development-store.myshopify.com", $accessToken);
$query = <<<QUERY
  mutation CreateMetaobject($metaobject: MetaobjectCreateInput!) {
    metaobjectCreate(metaobject: $metaobject) {
      metaobject {
        handle
        season: field(key: "season") {
          value
        }
      }
      userErrors {
        field
        message
        code
      }
    }
  }
QUERY;

$variables = [
  "metaobject" => [
    "type" => "lookbook",
    "handle" => "winter-2023",
    "fields" => [{"key"=>"season", "value"=>"winter"}],
  ],
];

$response = $client->query(["query" => $query, "variables" => $variables]);
Hide code
Input variables
Copy
{
  "metaobject": {
    "type": "lookbook",
    "handle": "winter-2023",
    "fields": [
      {
        "key": "season",
        "value": "winter"
      }
    ]
  }
}
Hide code
Response
JSON
{
  "metaobjectCreate": {
    "metaobject": {
      "handle": "winter-2023",
      "season": {
        "value": "winter"
      }
    },
    "userErrors": []
  }
}