123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347 |
- # Metafields enable you to attach additional information to a Shopify resource, such as a Product or a Collection.
- # For more information about where you can attach metafields refer to HasMetafields.
- # Some examples of the data that metafields enable you to store are specifications, size charts, downloadable documents, release dates, images, or part numbers.
- # Metafields are identified by an owner resource, namespace, and key. and store a value along with type information for that value.
- type Metafield implements LegacyInteroperability&Node{
- # The date and time when the metafield was created.
- createdAt: DateTime!
- # The optional, associated metafield definition that maps to this metafield's namespace and key pair.
- definition: MetafieldDefinition
- # The description of the metafield.
- description: String
- # A globally-unique identifier.
- id: ID!
- # The unique identifier for the metafield in its namespace.
- key: String!
- # The ID of the corresponding resource in the REST Admin API.
- legacyResourceId: UnsignedInt64!
- # A container for a group of metafields.
- # Grouping metafields within a namespace prevents your metafields from conflicting with other metafields that have the same key name.
- namespace: String!
- # The resource that the metafield is attached to.
- owner: HasMetafields!
- # The resource that the metafield is attached to.
- ownerType: MetafieldOwnerType!
- # Returns a reference object if the metafield definition's type is a resource reference.
- reference: MetafieldReference
- # A list of reference objects if the metafield's type is a resource reference list.
- references(
- first: Int
- after: String
- last: Int
- before: String
- ): MetafieldReferenceConnection
- # The type of data that the metafield stores in the value field.
- # See the list of supported types.
- type: String!
- # The date and time when the metafield was updated.
- updatedAt: DateTime!
- # The data to store in the metafield. The data is always stored as a string, regardless of the metafield's type.
- value: String!
- }
- # Metafield definitions enable you to define additional validation constraints for metafields, and enable the
- # merchant to edit metafield values in context.
- type MetafieldDefinition implements Node {
- # The description of a metafield definition.
- description: String
- # A globally-unique identifier.
- id: ID!
- # The key name used to identify a metafield definition within a namespace.
- key: String!
- # The list of metafields associated with a metafield definition.
- metafields(
- validationStatus: MetafieldValidationStatus = ANY
- first: Int
- after: String
- last: Int
- before: String
- reverse: Boolean = false
- ): MetafieldConnection!
- # The count of metafields under a metafield definition.
- metafieldsCount(validationStatus: MetafieldValidationStatus): Int!
- # The human-readable name for the metafield definition.
- name: String!
- # The namespace of the metafield definition. You can use a namespace to group related metafields.
- namespace: String!
- # The resource type that the metafield definition is attached to. For example, Product or Collection.
- ownerType: MetafieldOwnerType!
- # The position of the metafield definition in the pinned list.
- pinnedPosition: Int
- # The standard metafield definition template associated with a metafield definition.
- standardTemplate: StandardMetafieldDefinitionTemplate
- # The type of data that the metafield will store.
- type: MetafieldDefinitionType!
- # The validation status for the existing metafields within a metafield definition.
- validationStatus: MetafieldDefinitionValidationStatus!
- # A list of validation options for
- # the metafield. For example, for a metafield with the type date, you can set a minimum date validation, so
- # that the metafield will only store dates after the specific minimum date.
- validations: [MetafieldDefinitionValidation!]!
- # Whether metafields for the metafield definition are visible using the Storefront API.
- visibleToStorefrontApi: Boolean!
- }
- # Standard metafield definition templates provide preset configurations to create metafield definitions.
- # Each template has a specific namespace and key that we've reserved to have specific meanings for common use cases.
- #
- # Refer to the list of standard metafield definitions.
- type StandardMetafieldDefinitionTemplate implements Node {
- # The description of the standard metafield definition.
- description: String
- # A globally-unique identifier.
- id: ID!
- # The key owned by the definition after the definition has been activated.
- key: String!
- # The human-readable name for the standard metafield definition.
- name: String!
- # The namespace owned by the definition after the definition has been activated.
- namespace: String!
- # The list of resource types that the standard metafield definition can be applied to.
- ownerTypes: [MetafieldOwnerType!]!
- # The associated metafield definition type that the metafield stores.
- type: MetafieldDefinitionType!
- # The configured validations for the standard metafield definition.
- validations: [MetafieldDefinitionValidation!]!
- # Whether metafields for the definition are by default visible using the Storefront API.
- visibleToStorefrontApi: Boolean!
- }
- # A metafield definition type provides basic foundation and validation for a metafield.
- type MetafieldDefinitionType {
- # The category associated with the metafield definition type.
- category: String!
- # The name of the type for the metafield definition.
- # See the list of supported types.
- name: String!
- # The supported validations for a metafield definition type.
- supportedValidations: [MetafieldDefinitionSupportedValidation!]!
- # Whether metafields without a definition can be migrated to a definition of this type.
- supportsDefinitionMigrations: Boolean!
- }
- # The type and name for the optional validation configuration of a metafield.
- #
- # For example, a supported validation might consist of a max name and a number_integer type.
- # This validation can then be used to enforce a maximum character length for a single_line_text_field metafield.
- type MetafieldDefinitionSupportedValidation {
- # The name of the metafield definition validation.
- name: String!
- # The type of input for the validation.
- type: String!
- }
- # A configured metafield definition validation.
- #
- # For example, for a metafield definition of number_integer type, you can set a validation with the name max
- # and a value of 15. This validation will ensure that the value of the metafield is a number less than or equal to 15.
- #
- # Refer to the list of supported validations.
- type MetafieldDefinitionValidation {
- # The validation name.
- name: String!
- # The name for the metafield type of this validation.
- type: String!
- # The validation value.
- value: String
- }
- # Private metafields represent custom metadata that is attached to a resource.
- # Private metafields are accessible only by the application that created them and only from the GraphQL Admin API.
- #
- # An application can create a maximum of 10 private metafields per shop resource.
- type PrivateMetafield implements Node {
- # The date and time when the private metafield was created.
- createdAt: DateTime!
- # The id of the private metafield.
- id: ID!
- # The key name of the private metafield.
- key: String!
- # The namespace of the private metafield.
- namespace: String!
- # The date and time when the private metafield was updated.
- updatedAt: DateTime!
- # The value of a private metafield.
- value: String!
- # Represents the private metafield value type.
- valueType: PrivateMetafieldValueType!
- }
- # The input fields for a private metafield.
- input PrivateMetafieldInput {
- # The resource that owns the metafield. If the field is blank, then the Shop resource owns the metafield.
- owner: ID
- # The namespace of the private metafield.
- namespace: String!
- # The key of the private metafield.
- key: String!
- # The value and valueType of the private metafield, wrapped in a ValueInput object.
- valueInput: PrivateMetafieldValueInput!
- }
- # The value input contains the value and value type of the private metafield.
- input PrivateMetafieldValueInput {
- # The value of a private metafield.
- value: String!
- # Represents the private metafield value type.
- valueType: PrivateMetafieldValueType!
- }
- # The input fields to use to create or update a metafield through a mutation on the owning resource.
- # An alternative way to create or update a metafield is by using the metafieldsSet mutation.
- input MetafieldInput {
- # The description of the metafield.
- description: String
- # The unique ID of the metafield. You don't include an ID when you create a metafield because the metafield ID
- # is created automatically. The ID is required when you update a metafield.
- id: ID
- # The namespace for a metafield. The namespace is required when you create a metafield and is optional when you
- # update a metafield.
- namespace: String
- # The key name of the metafield. Required when creating but optional when updating.
- key: String
- # The value of a metafield.
- value: String
- # The metafield's type. The metafield type is required
- # when you create a metafield and is optional when you update a metafield.
- type: String
- }
- # An auto-generated type for paginating through multiple Metafields.
- type MetafieldConnection {
- # A list of edges.
- edges: [MetafieldEdge!]!
- # A list of the nodes contained in MetafieldEdge.
- nodes: [Metafield!]!
- # Information to aid in pagination.
- pageInfo: PageInfo!
- }
- # An auto-generated type which holds one Metafield and a cursor during pagination.
- type MetafieldEdge {
- # A cursor for use in pagination.
- cursor: String!
- # The item at the end of MetafieldEdge.
- node: Metafield!
- }
- # An auto-generated type for paginating through multiple MetafieldDefinitions.
- type MetafieldDefinitionConnection {
- # A list of edges.
- edges: [MetafieldDefinitionEdge!]!
- # A list of the nodes contained in MetafieldDefinitionEdge.
- nodes: [MetafieldDefinition!]!
- # Information to aid in pagination.
- pageInfo: PageInfo!
- }
- # An auto-generated type which holds one MetafieldDefinition and a cursor during pagination.
- type MetafieldDefinitionEdge {
- # A cursor for use in pagination.
- cursor: String!
- # The item at the end of MetafieldDefinitionEdge.
- node: MetafieldDefinition!
- }
- # An auto-generated type for paginating through multiple PrivateMetafields.
- type PrivateMetafieldConnection {
- # A list of edges.
- edges: [PrivateMetafieldEdge!]!
- # A list of the nodes contained in PrivateMetafieldEdge.
- nodes: [PrivateMetafield!]!
- # Information to aid in pagination.
- pageInfo: PageInfo!
- }
- # An auto-generated type which holds one PrivateMetafield and a cursor during pagination.
- type PrivateMetafieldEdge {
- # A cursor for use in pagination.
- cursor: String!
- # The item at the end of PrivateMetafieldEdge.
- node: PrivateMetafield!
- }
- # An auto-generated type for paginating through multiple MetafieldReferences.
- type MetafieldReferenceConnection {
- # A list of edges.
- edges: [MetafieldReferenceEdge!]!
- # A list of the nodes contained in MetafieldReferenceEdge.
- nodes: [MetafieldReference]!
- # Information to aid in pagination.
- pageInfo: PageInfo!
- }
- # An auto-generated type which holds one MetafieldReference and a cursor during pagination.
- type MetafieldReferenceEdge {
- # A cursor for use in pagination.
- cursor: String!
- # The item at the end of MetafieldReferenceEdge.
- node: MetafieldReference
- }
|