OBJECT

Variant

A unique option type/option value combination that represents a variation of a purchasable item.

link GraphQL Schema definition

  • type Variant implements Node {
  • # A message from the organisation responsible for therapeutic goods labelling.
  • administrativeBodyWarning: String
  • # Associated advert
  • advert: AllAdvert!
  • # The ingredients always in this item that cause allergic reactions.
  • allergenContains: String
  • # The ingredients possibly in this item that cause allergic reactions.
  • allergenMayContain: String
  • barcode: String
  • # Whether an item associated with the given variant can be added to cart.
  • buyable: Boolean!
  • catalogRulesErrors: [CatalogRulesError!]
  • # The comparable size of the item. Used for comparable unit pricing.
  • comparableSize: Float
  • # The comparable unit used to measure the item. Used for comparable unit pricing.
  • comparableUnit: String
  • # Number of items available with a given variant.
  • countOnHand: Int!
  • # The date the variant was created Only accessible to users: admin_authorized. And
  • # admin users with permissions: 'Manage product catalog', 'Full GraphQL API
  • # access'.
  • createdAt: ISO8601DateTime!
  • # Usage instructions for the item.
  • directions: String
  • # Whether to display the given variant in the associated advert.
  • displayable: Boolean!
  • # Links to adverts with the same barcode as this variant. Only accessible to
  • # users: admin_authorized. And admin users with permissions: 'Manage product
  • # catalog', 'Full GraphQL API access'.
  • duplicateBarcodeAdverts: [Advert!]!
  • # Links to variants with the same barcode as this variant. Only accessible to
  • # users: admin_authorized. And admin users with permissions: 'Manage product
  • # catalog', 'Full GraphQL API access'.
  • duplicateBarcodeVariants: [Variant!]!
  • # Price used for editing by sellers
  • editablePrice: Decimal
  • # Price used for editing by sellers Denominated in cents.
  • editablePriceCents: Int @deprecated( reason: "Prices can be larger than is representable by a graphql integer. Use the string version instead. This field will be removed no earlier than July 1st, 2025. " )
  • # Price used for editing by sellers In string with currency symbol.
  • #
  • # Arguments
  • # currency: Currency in which to display money fields. Defaults
  • # to the currency of the marketplace's home country.
  • editablePriceFormatted(currency: String): String
  • # Price used for editing by sellers
  • editableSalePrice: Decimal
  • # Price used for editing by sellers Denominated in cents.
  • editableSalePriceCents: Int @deprecated( reason: "Prices can be larger than is representable by a graphql integer. Use the string version instead. This field will be removed no earlier than July 1st, 2025. " )
  • # Price used for editing by sellers In string with currency symbol.
  • #
  • # Arguments
  • # currency: Currency in which to display money fields. Defaults
  • # to the currency of the marketplace's home country.
  • editableSalePriceFormatted(currency: String): String
  • # An ID that is managed the retailer.
  • externalId: String
  • externalIds: [ExternalID!]!
  • # Golden Product Variant associated to this variant
  • goldenProductVariant: GoldenProductVariant
  • # The health warnings of the item.
  • healthWarnings: String
  • id: ID!
  • # Arguments
  • # after: Returns the elements in the list that come after the
  • # specified cursor.
  • # before: Returns the elements in the list that come before the
  • # specified cursor.
  • # first: Returns the first _n_ elements from the list.
  • # last: Returns the last _n_ elements from the list.
  • images(after: String, before: String, first: Int, last: Int): ImagesConnection!
  • # Whether the quantity for the given variant is unlimited.
  • infiniteQuantity: Boolean!
  • # The ingredients in the item.
  • ingredients: String
  • # The intended purpose of the item.
  • intendedPurpose: String
  • # support multi-store location inventory
  • #
  • # Arguments
  • # after: Returns the elements in the list that come after the
  • # specified cursor.
  • # before: Returns the elements in the list that come before the
  • # specified cursor.
  • # first: Returns the first _n_ elements from the list.
  • # last: Returns the last _n_ elements from the list.
  • inventories(after: String, before: String, first: Int, last: Int): InventorysConnection
  • # The size of the item. Used for comparable unit pricing.
  • itemSize: Float
  • # The individual item tax rate on variant.
  • itemTaxRate: Decimal
  • # The unit used to measure the item. Used for comparable unit pricing.
  • itemUnit: String
  • # The displayable label for the variant. Includes variant type and value (e.g.
  • # "size / M"). Falls back to SKU if no option values set, ID if no SKU is set.
  • label: String!
  • legacyId: Int!
  • # Lowest non-sale price available for the item.
  • lowestOriginalPrice: String
  • # Lowest non-sale price available for the item. Denominated in cents.
  • lowestOriginalPriceCents: Int @deprecated( reason: "Prices can be larger than is representable by a graphql integer. Use lowestOriginalPrice instead. This field will be removed no earlier than July 1st, 2025." )
  • # Absolute lowest price (sale price or original price) available for the item.
  • lowestPrice: String
  • # Absolute lowest price (sale price or original price) available for the item.
  • # Denominated in cents.
  • lowestPriceCents: Int @deprecated( reason: "Prices can be larger than is representable by a graphql integer. Use lowestPrice instead. This field will be removed no earlier than July 1st, 2025." )
  • # Maximum purchase quantity allowed for successful checkout
  • maxPurchaseQuantity: Int
  • # Measure type of how is the item supplied.
  • measureType: String
  • # Comparable Unit as a Configurable Unit of Measure
  • measurementComparableUnit: MeasurementUnit
  • # Item Unit as a Configurable Unit of Measure
  • measurementItemUnit: MeasurementUnit
  • # Metadata key/values
  • metadata: [Metadatum!]!
  • # Minimum purchase quantity required for successful checkout
  • minPurchaseQuantity: Int
  • notes: String
  • # The nutritional profile of the item.
  • nutritionInformation: String
  • # This field returns option values from single-select and multi-select option
  • # types.
  • #
  • # Arguments
  • # after: Returns the elements in the list that come after the
  • # specified cursor.
  • # before: Returns the elements in the list that come before the
  • # specified cursor.
  • # first: Returns the first _n_ elements from the list.
  • # last: Returns the last _n_ elements from the list.
  • optionValues(
  • after: String,
  • before: String,
  • first: Int,
  • last: Int
  • ): OptionValueConnection! @deprecated( reason: "This field is deprecated in favour of VariantOptionValues." )
  • # Option value labels before being mapped to canonical option values. (Includes
  • # the original values for both unmapped and mapped option values)
  • optionValuesBeforeMapping: [String!]!
  • # Boolean for whether a variant is valid, where a variant is valid if it has a
  • # barcode, has a sku which is not longer than 255 characters, has a count_on_hand
  • # which is an integer greater than zero, has a price and a sale_price which is
  • # greater than zero unless free adverts are enabled, has a description which is
  • # not longer than 140 characters, where the sale_price is less than the price, the
  • # options values are unique, and the option values match the expected values for
  • # this prototype.
  • optionValuesInclusiveValid: Boolean!
  • # Pricing model of the variant
  • pricingModel: PricingModelEnum!
  • # The product warnings of the item.
  • productWarnings: String
  • # Whether seller published a variant.
  • published: Boolean!
  • # The recommended retail price (RRP) for the item.
  • recommendedRetailPrice: String
  • # The recommended retail price (RRP) for the item. Denominated in cents.
  • recommendedRetailPriceCents: Int @deprecated( reason: "Prices can be larger than is representable by a graphql integer. Use the string version instead. This field will be removed no earlier than July 1st, 2025. " )
  • # The recommended retail price (RRP) for the item. In string with currency symbol.
  • #
  • # Arguments
  • # currency: Currency in which to display money fields. Defaults
  • # to the currency of the marketplace's home country.
  • recommendedRetailPriceFormatted(
  • currency: String
  • ): String
  • # End of the period in which the sale price is valid (or null)
  • salePriceEndAt: ISO8601DateTime
  • # Start of the period in which the sale price is valid (or null)
  • salePriceStartAt: ISO8601DateTime
  • # Shipping options available for the variant
  • #
  • # Arguments
  • # after: Returns the elements in the list that come after the
  • # specified cursor.
  • # before: Returns the elements in the list that come before the
  • # specified cursor.
  • # first: Returns the first _n_ elements from the list.
  • # last: Returns the last _n_ elements from the list.
  • shippingOptions(after: String, before: String, first: Int, last: Int): ShippingOptionConnection
  • # The direct shipping parcel information for the variant.
  • shippingParcel: ShippingParcel
  • # Either a direct parcel information or inferred from taxon
  • shippingParcelToUse: ShippingParcel
  • shippingProfile: ShippingProfile
  • # The shipping profile ID for the variant.
  • shippingProfileId: ID
  • sku: String
  • # "Internal" or "External"
  • sourceName: String
  • # How to store the item.
  • storageInstructions: String
  • # The suitability of the item for various ailments.
  • suitableFor: String
  • taxCode: String
  • # The date the variant was last updated Only accessible to users:
  • # admin_authorized. And admin users with permissions: 'Manage product catalog',
  • # 'Full GraphQL API access'.
  • updatedAt: ISO8601DateTime!
  • url: String
  • # This field returns option type values set to the variant.
  • #
  • # Arguments
  • # after: Returns the elements in the list that come after the
  • # specified cursor.
  • # before: Returns the elements in the list that come before the
  • # specified cursor.
  • # first: Returns the first _n_ elements from the list.
  • # last: Returns the last _n_ elements from the list.
  • variantOptionValues(
  • after: String,
  • before: String,
  • first: Int,
  • last: Int
  • ): VariantOptionValueConnection!
  • # The wholesale price for the item.
  • wholesalePrice: String
  • # The wholesale price for the item. Denominated in cents.
  • wholesalePriceCents: Int @deprecated( reason: "Prices can be larger than is representable by a graphql integer. Use the string version instead. This field will be removed no earlier than July 1st, 2025. " )
  • # The wholesale price for the item. In string with currency symbol.
  • #
  • # Arguments
  • # currency: Currency in which to display money fields. Defaults
  • # to the currency of the marketplace's home country.
  • wholesalePriceFormatted(currency: String): String
  • # Wholesale promo price of the variant
  • wholesalePromoPrice: Decimal
  • # Wholesale promo price of the variant Denominated in cents.
  • wholesalePromoPriceCents: Int @deprecated( reason: "Prices can be larger than is representable by a graphql integer. Use the string version instead. This field will be removed no earlier than July 1st, 2025. " )
  • # End of the period in which the wholesale promo price is valid (or null)
  • wholesalePromoPriceEndAt: ISO8601DateTime
  • # Wholesale promo price of the variant In string with currency symbol.
  • #
  • # Arguments
  • # currency: Currency in which to display money fields. Defaults
  • # to the currency of the marketplace's home country.
  • wholesalePromoPriceFormatted(currency: String): String
  • # Start of the period in which the wholesale promo price is valid (or null)
  • wholesalePromoPriceStartAt: ISO8601DateTime
  • }