How do I create Metaobject definition with field which “Use as filter in metaobject index” and “Active-draft status” set to true using Admin API graphql mutation?
API version: 2025-07
My code:
mutation MetaobjectDefinitionCreate($definition: MetaobjectDefinitionCreateInput!) {
metaobjectDefinitionCreate(definition: $definition) {
metaobjectDefinition {
id
type
fieldDefinitions {
key
name
type {
name
}
}
}
}
}
{
"definition": {
"name": "Info",
"displayNameKey": "name",
"type": "info",
"access": {
"storefront": "PUBLIC_READ"
},
"capabilities": {
"translatable": {
"enabled": true
},
"renderable": {
"enabled": false
}
},
"fieldDefinitions": [
{ "key": "name", "name": "Name", "type": "single_line_text_field", "description": "Name", "validations": [{
"name": "choices",
"value": "[\"green\", \"blue\", \"red"]"
}], "required": true
},
{ "key": "image", "name": "Image", "type": "file_reference", "description": "Image", "validations": {
"name": "file_type_options",
"value": "[\"Image\"]" }, "required": true
}
]
}
}
Useful links:
https://help.shopify.com/en/manual/custom-data/options#list-of-options-available-for-metaobjects


