ProductType
Represents a type of product. It defines what attributes are available to products of this type.
type ProductType implements Node, ObjectWithMetadata {
id: ID!
description: String!
descriptionHtml: String!
externalId: String
externalSource: String
name: String!
slug: String!
isShippingRequired: Boolean!
isLocked: Boolean!
isDigital: Boolean!
weight: Weight
isPriceOverrideAllowed: Boolean!
createdBy: Seller
privateMetadata: [MetadataItem!]!
metadata: [MetadataItem!]!
products(
before: String
after: String
first: Int
last: Int
): ProductCountableConnection
taxType: TaxType
variantAttributes: [Attribute!]!
hasVariants: Boolean
hasProducts: Boolean
productAttributes: [Attribute!]!
availableAttributes(
filter: AttributeFilterInput
before: String
after: String
first: Int
last: Int
): AttributeCountableConnection
model: String
hasVariantOptions: Boolean!
}
Fields
ProductType.id ● ID! non-null scalar
The ID of the object
ProductType.description ● String! non-null scalar
ProductType.descriptionHtml ● String! non-null scalar
ProductType.externalId ● String scalar
ProductType.externalSource ● String scalar
External source from which the product type is imported.
ProductType.name ● String! non-null scalar
ProductType.slug ● String! non-null scalar
ProductType.isShippingRequired ● Boolean! non-null scalar
ProductType.isLocked ● Boolean! non-null scalar
ProductType.isDigital ● Boolean! non-null scalar
ProductType.weight ● Weight object
ProductType.isPriceOverrideAllowed ● Boolean! non-null scalar
indicates whether we allow overriding the unit_price of variants in checkout and draft order lines
ProductType.createdBy ● Seller object
ProductType.privateMetadata ● [MetadataItem!]! non-null object
List of private metadata items.Requires proper staff permissions to access.
ProductType.metadata ● [MetadataItem!]! non-null object
List of public metadata items. Can be accessed without permissions.
ProductType.products ● ProductCountableConnection object
List of products of this type.
ProductType.products.before ● String scalar
Return the elements in the list that come before the specified cursor.
ProductType.products.after ● String scalar
Return the elements in the list that come after the specified cursor.
ProductType.products.first ● Int scalar
Return the first n elements from the list.
ProductType.products.last ● Int scalar
Return the last n elements from the list.
ProductType.taxType ● TaxType object
A type of tax. Assigned by enabled tax gateway
ProductType.variantAttributes ● [Attribute!]! non-null object
Variant attributes of that product type.
ProductType.hasVariants ● Boolean scalar
Legacy indicator, always true.
ProductType.hasProducts ● Boolean scalar
True if any products are associated to this type.
ProductType.productAttributes ● [Attribute!]! non-null object
Product attributes of that product type.
ProductType.availableAttributes ● AttributeCountableConnection object
ProductType.availableAttributes.filter ● AttributeFilterInput input
ProductType.availableAttributes.before ● String scalar
Return the elements in the list that come before the specified cursor.
ProductType.availableAttributes.after ● String scalar
Return the elements in the list that come after the specified cursor.
ProductType.availableAttributes.first ● Int scalar
Return the first n elements from the list.
ProductType.availableAttributes.last ● Int scalar
Return the last n elements from the list.
ProductType.model ● String scalar
Brand of the product
ProductType.hasVariantOptions ● Boolean! non-null scalar
Whether this product type allows creating variants.
Interfaces
Node interface
An object with an ID
ObjectWithMetadata interface
Returned By
productType query
Member Of
Attribute object ● AttributeAssign object ● AttributeUnassign object ● AttributeUnassignFromProductType object ● Product object ● ProductTypeCountableEdge object ● ProductTypeCreate object ● ProductTypeDelete object ● ProductTypeReorderAttributes object ● ProductTypeUpdate object