younifyd
Menu

metafieldDefinitionCreate

Creates a MetafieldDefinition that establishes structure and validation rules for metafields.

Use it in a workflow

  1. Add a step and choose the Shopify connector.
  2. Pick the metafieldDefinitionCreate action (under Metafield).
  3. Fill in the fields below, then reference the result from later steps as {{metafielddefinitioncreate.response.data}}.

Query

This is the mutation the action sends by default. Edit it in the step's Query field to change which fields come back.

graphql
mutation MetafieldDefinitionCreate($definition: MetafieldDefinitionInput!) {
  metafieldDefinitionCreate(definition: $definition) {
    createdDefinition {
      access {
        admin
        customerAccount
        storefront
      }
      capabilities {
        adminFilterable
        analyticsQueryable
        cartToOrderCopyable
        smartCollectionCondition
        uniqueValues
      }
      constraints {
        key
      }
      description
      id
      key
      name
      namespace
      ownerType
      pinnedPosition
      standardTemplate {
        description
        id
        key
        name
        namespace
        ownerTypes
        type
        validations
        visibleToStorefrontApi
      }
      type {
        category
        name
        supportedValidations
        supportsDefinitionMigrations
        valueType
      }
      useAsCollectionCondition
      validationStatus
      validations {
        name
        type
        value
      }
    }
    userErrors {
      code
      elementIndex
      elementKey
      field
      message
    }
  }
}

Variables

Pass these as a JSON object in the step's Variables field.

definitionobjectrequired

Specifies the input fields for a metafield definition.

namespacestring
keystringrequired
namestringrequired
descriptionstring
ownerTypestringrequired

One ofAPI_PERMISSIONCOMPANYCOMPANY_LOCATIONPAYMENT_CUSTOMIZATIONVALIDATIONCUSTOMERDELIVERY_CUSTOMIZATIONDRAFTORDERGIFT_CARD_TRANSACTIONTRANSFERMARKETCARTTRANSFORMCOLLECTIONMEDIA_IMAGEPRODUCTPRODUCTVARIANTSELLING_PLANARTICLEBLOGPAGEFULFILLMENT_CONSTRAINT_RULEORDER_ROUTING_LOCATION_RULEDISCOUNTORDERLOCATIONSHOP

typestringrequired
validationsarray<object>2 fields
useAsCollectionConditionboolean
pinboolean
accessobject3 fields
constraintsobject2 fields
capabilitiesobject5 fields
json
{
  "definition": {
    "key": "string",
    "name": "string",
    "ownerType": "API_PERMISSION",
    "type": "string",
    "namespace": "string",
    "description": "string",
    "validations": [
      {
        "name": "string",
        "value": "string"
      }
    ],
    "useAsCollectionCondition": false,
    "pin": false,
    "access": {
      "admin": "MERCHANT_READ",
      "storefront": "PUBLIC_READ",
      "customerAccount": "READ_WRITE"
    },
    "constraints": {
      "key": "string",
      "values": [
        "string"
      ]
    },
    "capabilities": {
      "smartCollectionCondition": {
        "enabled": "string"
      },
      "adminFilterable": {
        "enabled": "string"
      },
      "uniqueValues": {
        "enabled": "string"
      },
      "analyticsQueryable": {
        "enabled": "string"
      },
      "cartToOrderCopyable": {
        "enabled": "string"
      }
    }
  }
}

Response

Read the result with {{metafielddefinitioncreate.response.data.data.metafieldDefinitionCreate}}. If the API returns errors, the step fails and they are at {{metafielddefinitioncreate.response.data.errors}}.

createdDefinitionobject
accessobject3 fields
capabilitiesobject5 fields
constraintsobject1 fields
descriptionstring
idstring
keystring
namestring
namespacestring
ownerTypestring

One ofAPI_PERMISSIONCOMPANYCOMPANY_LOCATIONPAYMENT_CUSTOMIZATIONVALIDATIONCUSTOMERDELIVERY_CUSTOMIZATIONDRAFTORDERGIFT_CARD_TRANSACTIONTRANSFERMARKETCARTTRANSFORMCOLLECTIONMEDIA_IMAGEPRODUCTPRODUCTVARIANTSELLING_PLANARTICLEBLOGPAGEFULFILLMENT_CONSTRAINT_RULEORDER_ROUTING_LOCATION_RULEDISCOUNTORDERLOCATIONSHOP

pinnedPositionnumber
standardTemplateobject9 fields
typeobject5 fields
useAsCollectionConditionboolean
validationStatusstring

One ofALL_VALIDIN_PROGRESSSOME_INVALID

validationsarray<object>
userErrorsarray<object>
codeobject
elementIndexobject
elementKeyobject
fieldobject
messageobject

Need more? See the Shopify guide for connection setup and behaviour shared by every action.