Source Product
{
availableForSale: true,
compareAtPrice: {
__nylaType: "nyla_compound_price",
value: [
{
amount: "52.0",
currencyCode: "USD",
},
{
amount: "96.0",
currencyCode: "USD",
},
],
},
description: "A light-reflecting superproduct that’s as versatile as it is simple to use. Wear Miracle Balm alone or layer on top of foundation for an instant refresh. Changetest link",
descriptionHtml: "A light-reflecting superproduct that’s as versatile as it is simple to use. Wear Miracle Balm alone or layer on top of foundation for an instant refresh. Change test link",
handle: "balm",
id: "gid://shopify/Product/7686505824421",
maxCompareAtPrice: {
amount: "52.0",
currencyCode: "USD",
},
maxPrice: {
amount: "76.0",
currencyCode: "USD",
},
media: [
{
altText: "Dawn,50ml",
id: "gid://shopify/ImageSource/25201001300133",
type: "image",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/products/Rosesmall.jpg?v=1651269732",
},
{
altText: "Dawn, Dusk, Evening, Morning, Noon",
id: "gid://shopify/ImageSource/25434767622309",
type: "image",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/products/Productimage2_78b9f74a-f50a-4e3b-9beb-eb4414f1f265.jpg?v=1663857862",
},
{
altText: "Dawn, 50ml",
id: "gid://shopify/ImageSource/25201001463973",
type: "image",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/products/Roselarge.jpg?v=1663857862",
},
],
metafield: {
custom: {
descriptionlarge: "Louise is 6'2 wearing the Open air pant in blue",
largesizes: {
altText: null,
height: 800,
id: "gid://shopify/ImageSource/25856801472677",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/files/Large.png?v=1663163286",
width: 800,
},
mysize: "true",
smallsizes: {
altText: null,
height: 800,
id: "gid://shopify/ImageSource/25856800391333",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/files/Small.png?v=1663163275",
width: 800,
},
},
nyla: {
array_of_images: "[\"gid://shopify/MediaImage/26451061047461\",\"gid://shopify/MediaImage/26451061014693\",\"gid://shopify/MediaImage/26451060981925\",\"gid://shopify/MediaImage/26451060949157\",\"gid://shopify/MediaImage/26451060883621\"]",
featuredIngredients: "Geranium, Mint, Eucalyptus, Lavender",
ingredients: "antioxidant, black-pepper",
shipping: "Usually ships in 2-4 weeks",
single_image: {
altText: null,
height: 4096,
id: "gid://shopify/ImageSource/26309420417189",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/files/92d292fe78389de7a22c376f48164a61.jpg?v=1671467507",
width: 2713,
},
},
nyla_messaging: {
ribbon: "Best-Seller",
tagline: "Tagline text",
},
nyla_options: {
defaultValue1: "50ml",
defaultValue2: "Morning",
productOptionImageFilter: "Shade",
},
},
minCompareAtPrice: {
amount: "42.0",
currencyCode: "USD",
},
minPrice: {
amount: "42.0",
currencyCode: "USD",
},
options: [
{
name: "Shade",
selectedOptionValue: "Dawn",
values: [
"Dawn",
"Morning",
"Noon",
"Dusk",
"Evening",
],
},
{
name: "Size",
selectedOptionValue: "25ml",
values: [
"25ml",
"50ml",
"75ml",
"100ml",
],
},
],
optionsByName: {
shade: {
values: [
{
availableForSale: true,
isSelected: false,
value: "Dawn",
},
{
availableForSale: true,
isSelected: false,
value: "Morning",
},
{
availableForSale: true,
isSelected: false,
value: "Noon",
},
{
availableForSale: true,
isSelected: false,
value: "Dusk",
},
{
availableForSale: true,
isSelected: false,
value: "Evening",
},
],
},
size: {
values: [
{
availableForSale: true,
isSelected: false,
value: "25ml",
},
{
availableForSale: true,
isSelected: false,
value: "50ml",
},
{
availableForSale: true,
isSelected: false,
value: "75ml",
},
{
availableForSale: true,
isSelected: false,
value: "100ml",
},
],
},
},
price: {
__nylaType: "nyla_compound_price",
value: [
{
amount: "42.0",
currencyCode: "USD",
},
{
amount: "76.0",
currencyCode: "USD",
},
],
},
productType: "Options_shade_size",
sellingPlanGroups: [
{
appName: "SKIO",
currentDiscount: 5,
discountType: "SellingPlanFixedPriceAdjustment",
isSelected: "Every Month",
isSellingPlanSelected: false,
name: "Subscription",
options: [
{
name: "Every-gid://shopify/ProductVariant/46240848544065",
values: [
"Every Month",
"Every 2 months",
"Every 3 months",
],
},
],
selectedIndex: 0,
sellingPlanName: "Every-gid://shopify/ProductVariant/46240848544065",
sellingPlans: [
{
description: null,
id: "gid://shopify/SellingPlan/8363868481",
name: "Every Month",
options: [
{
name: "Every-gid://shopify/ProductVariant/46240848544065",
value: "Every Month",
},
],
priceAdjustments: [
{
adjustmentValue: {
__typename: "SellingPlanPercentagePriceAdjustment",
adjustmentPercentage: 0,
},
orderCount: null,
},
],
recurringDeliveries: true,
},
{
description: null,
id: "gid://shopify/SellingPlan/8363901249",
name: "Every 2 months",
options: [
{
name: "Every-gid://shopify/ProductVariant/46240848544065",
value: "Every 2 months",
},
],
priceAdjustments: [
{
adjustmentValue: {
__typename: "SellingPlanPercentagePriceAdjustment",
adjustmentPercentage: 0,
},
orderCount: null,
},
],
recurringDeliveries: true,
},
{
description: null,
id: "gid://shopify/SellingPlan/8363934017",
name: "Every 3 months",
options: [
{
name: "Every-gid://shopify/ProductVariant/46240848544065",
value: "Every 3 months",
},
],
priceAdjustments: [
{
adjustmentValue: {
__typename: "SellingPlanPercentagePriceAdjustment",
adjustmentPercentage: 0,
},
orderCount: null,
},
],
recurringDeliveries: true,
},
],
sellingPlansIds: [
"gid://shopify/SellingPlan/8363868481",
"gid://shopify/SellingPlan/8363901249",
"gid://shopify/SellingPlan/8363934017",
],
},
{
appName: "SKIO",
currentDiscount: {
amount: "4.0",
currencyCode: "USD",
},
discountType: "SellingPlanFixedPriceAdjustment",
isSelected: "Every Month",
isSellingPlanSelected: false,
name: "Subscription",
options: [
{
name: "Every-gid://shopify/ProductVariant/46240848544065",
values: [
"Every Month",
"Every 2 months",
"Every 3 months",
],
},
],
selectedIndex: 0,
sellingPlanName: "Every-gid://shopify/ProductVariant/46240848544065",
sellingPlans: [
{
description: null,
id: "gid://shopify/SellingPlan/8363868481",
name: "Every Month",
options: [
{
name: "Every-gid://shopify/ProductVariant/46240848544065",
value: "Every Month",
},
],
priceAdjustments: [
{
adjustmentValue: {
__typename: "SellingPlanPercentagePriceAdjustment",
adjustmentPercentage: 0,
},
orderCount: null,
},
],
recurringDeliveries: true,
},
{
description: null,
id: "gid://shopify/SellingPlan/8363901249",
name: "Every 2 months",
options: [
{
name: "Every-gid://shopify/ProductVariant/46240848544065",
value: "Every 2 months",
},
],
priceAdjustments: [
{
adjustmentValue: {
__typename: "SellingPlanPercentagePriceAdjustment",
adjustmentPercentage: 0,
},
orderCount: null,
},
],
recurringDeliveries: true,
},
{
description: null,
id: "gid://shopify/SellingPlan/8363934017",
name: "Every 3 months",
options: [
{
name: "Every-gid://shopify/ProductVariant/46240848544065",
value: "Every 3 months",
},
],
priceAdjustments: [
{
adjustmentValue: {
__typename: "SellingPlanPercentagePriceAdjustment",
adjustmentPercentage: 0,
},
orderCount: null,
},
],
recurringDeliveries: true,
},
],
sellingPlansIds: [
"gid://shopify/SellingPlan/8363868481",
"gid://shopify/SellingPlan/8363901249",
"gid://shopify/SellingPlan/8363934017",
],
},
],
seo: {
description: "The SEO description",
title: "Balm - SEO title",
},
shortId: "7686505824421",
tags: [
"categoryFace",
"nyla_collection_285428154533",
"nyla_collection_285428613285",
"nyla_collection_286857232549",
"upsell-balm",
"upsell-top",
],
title: "Balm",
totalInventory: 130,
url: "/products/balm?variant_id=41606306693285",
variant: {
availableForSale: true,
barcode: "",
compareAtPrice: null,
currentlyNotInStock: false,
image: {
altText: "Morning, 50ml",
id: "gid://shopify/ProductImage/32788414529701",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/products/Mintlarge.jpg?v=1663857862",
},
media: [
{
altText: "Dawn, Dusk, Evening, Morning, Noon",
id: "gid://shopify/ImageSource/25434767622309",
type: "image",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/products/Productimage2_78b9f74a-f50a-4e3b-9beb-eb4414f1f265.jpg?v=1663857862",
},
{
altText: "Morning, 50ml",
id: "gid://shopify/ImageSource/25201001398437",
type: "image",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/products/Mintsmall.jpg?v=1663857862",
},
{
altText: "Morning, 50ml",
id: "gid://shopify/ImageSource/25201001562277",
type: "image",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/products/Mintlarge.jpg?v=1663857862",
},
],
metafield: {
nyla: {
dark_image: {
altText: null,
height: 2475,
id: "gid://shopify/ImageSource/26309377294501",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/files/portrait-of-beautiful-black-woman-with-mysterious-shadows.jpg?v=1671466812",
width: 1650,
},
light_image: {
altText: null,
height: 2474,
id: "gid://shopify/ImageSource/26446658437285",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/files/portrait-of-beautiful-woman-with-clear-skin-posing-with-monster-plant-leaf.jpg?v=1675097830",
width: 1650,
},
medium_image: {
altText: null,
height: 4096,
id: "gid://shopify/ImageSource/26309377360037",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/files/dbd006133f931767456c7cdfb16cf1d4.jpg?v=1671466813",
width: 2925,
},
},
},
price: {
amount: "76.0",
currencyCode: "USD",
},
quantityAvailable: 23,
selectedOptions: [
{
name: "Shade",
value: "Morning",
},
{
name: "Size",
value: "50ml",
},
],
sellingPlanAllocations: [
{
sellingPlan: {
id: "gid://shopify/SellingPlan/8363868481",
},
},
{
sellingPlan: {
id: "gid://shopify/SellingPlan/8363901249",
},
},
{
sellingPlan: {
id: "gid://shopify/SellingPlan/8363934017",
},
},
],
shortId: "41606306693285",
sku: "",
title: "Morning / 50ml",
},
variants: [
{
availableForSale: true,
barcode: "",
compareAtPrice: null,
currentlyNotInStock: false,
image: {
altText: "Dusk, 50ml",
id: "gid://shopify/ProductImage/32788414595237",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/products/Mangosmall.jpg?v=1663857862",
},
isSelected: false,
metafield: {
nyla: {
dark_image: {
altText: null,
height: 1100,
id: "gid://shopify/ImageSource/26309377228965",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/files/portrait-beautiful-black-woman-using-jade-roller-her-face.jpg?v=1671466812",
width: 1650,
},
light_image: {
altText: null,
height: 1066,
id: "gid://shopify/ImageSource/26309377196197",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/files/portrait-beautiful-woman-with-clear-skin.jpg?v=1671466812",
width: 1600,
},
medium_image: {
altText: null,
height: 4096,
id: "gid://shopify/ImageSource/26309420417189",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/files/92d292fe78389de7a22c376f48164a61.jpg?v=1671467507",
width: 2713,
},
},
},
price: {
amount: "42.0",
currencyCode: "USD",
},
quantityAvailable: 22,
selectedOptions: [
{
name: "Shade",
value: "Dawn",
},
{
name: "Size",
value: "25ml",
},
],
sellingPlanAllocations: [
{
sellingPlan: {
id: "gid://shopify/SellingPlan/8363868481",
},
},
{
sellingPlan: {
id: "gid://shopify/SellingPlan/8363901249",
},
},
{
sellingPlan: {
id: "gid://shopify/SellingPlan/8363934017",
},
},
],
shortId: "41606306431141",
sku: "",
title: "Dawn / 25ml",
},
{
availableForSale: true,
barcode: "",
compareAtPrice: null,
currentlyNotInStock: false,
image: {
altText: "Dusk, 50ml",
id: "gid://shopify/ProductImage/32788414562469",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/products/Mangolarge.jpg?v=1663857862",
},
isSelected: true,
metafield: {
nyla: {
dark_image: {
altText: null,
height: 1100,
id: "gid://shopify/ImageSource/26309377228965",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/files/portrait-beautiful-black-woman-using-jade-roller-her-face.jpg?v=1671466812",
width: 1650,
},
light_image: {
altText: null,
height: 1066,
id: "gid://shopify/ImageSource/26309377196197",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/files/portrait-beautiful-woman-with-clear-skin.jpg?v=1671466812",
width: 1600,
},
medium_image: {
altText: null,
height: 4096,
id: "gid://shopify/ImageSource/26309420417189",
url: "https://cdn.shopify.com/s/files/1/0584/6053/6997/files/92d292fe78389de7a22c376f48164a61.jpg?v=1671467507",
width: 2713,
},
},
},
price: {
amount: "76.0",
currencyCode: "USD",
},
quantityAvailable: 1,
selectedOptions: [
{
name: "Shade",
value: "Dawn",
},
{
name: "Size",
value: "50ml",
},
],
sellingPlanAllocations: [
{
sellingPlan: {
id: "gid://shopify/SellingPlan/8363868481",
},
},
{
sellingPlan: {
id: "gid://shopify/SellingPlan/8363901249",
},
},
{
sellingPlan: {
id: "gid://shopify/SellingPlan/8363934017",
},
},
],
shortId: "41606306594981",
sku: "",
title: "Dawn / 50ml",
},
],
vendor: "Nyla",
}
Properties
Indicates whether or not the product is available for sale.
The minimum and maximum compare-at prices across a product's variants.
Stripped description of the product, single line with HTML tags removed.
The description of the product, complete with HTML formatting.
A human-friendly unique string for the Product automatically generated from its title.
A globally-unique identifier from Shopify (the GraphQL long-form format).
The maximum compare-at price across a product's variants.
The highest variant's product
The media associated with the product. You can iterate over the array (in Grid Layout/Slide Layout) or directly use {{ product.media.0 }}
to select the first image (with any number in the list).
Returns a metafield found by namespace and key.
The minimum compare-at price across a product's variants.
The lowest variant's product
List of custom product property names like “Size”, “Color”, and “Material” with values. These represent product options and can be used for products in a variety of ways.
The product option’s name.
The product option’s value.
The corresponding value to the product option name.
Same as product.options but keyed by option name which makes it easy to use. Each option also surfaces more useful information.
Whether this option value is available to be sold based on its current availability status
Whether this option value is currently selected or not
Each option value, such as "Blue"
The price range.
A categorization that a product can be tagged with, commonly used for filtering and searching.
The discounted percentage off (f.e. 15.00)
100% - discountPercentage (f.e. 85.00). Only available in Shopify Checkout Integration (not in Recharge Checkout)
Whether a recharge subscription is currently selected or not
This properties are generally created by a subscription app, SKIO for example. A list of a product's available selling plan groups. A selling plan group represents a selling method. For example, 'Subscribe and save' is a selling method where customers pay for goods or services per delivery. A selling plan group contains individual selling plans.
A display friendly name for the app that created the selling plan group.
Discount value, could be a number for percentage, or a price: { amount, currencyCode } for a fixed discount.
Discount type of current selling plan, could be percentage discount or fixed discount.
The name of the selected selling plan, "Every Month" for example.
Flag set as false by default, it can be changed using link actions, false is intended to be use for "One time purchase", true for "Subscription purchase"
The name of the selling plan group.
Represents the selling plan options available in the drop-down list in the storefront. For example, 'Delivery every week' or 'Delivery every 2 weeks' specifies the delivery frequency options for the product.
The name of the option. For example, 'Delivery every'.
The values for the options specified by the selling plans in the selling plan group. For example, '1 week', '2 weeks', '3 weeks'.
Index of the selected selling plan
The name of the selling plan
A list of selling plans in a selling plan group. A selling plan is a representation of how products and variants can be sold and purchased. For example, an individual selling plan could be '6 weeks of prepaid granola, delivered weekly'.
The description of the selling plan.
A globally-unique ID.
The name of the selling plan. For example, '6 weeks of prepaid granola, delivered weekly'.
The selling plan options available in the drop-down list in the storefront. For example, 'Delivery every week' or 'Delivery every 2 weeks' specifies the delivery frequency options for the product. Individual selling plans contribute their options to the associated selling plan group. For example, a selling plan group might have an option called option1: Delivery every. One selling plan in that group could contribute option1: 2 weeks with the pricing for that option, and another selling plan could contribute option1: 4 weeks, with different pricing.
The name of the option (ie "Delivery every").
The value of the option (ie "Month").
The price adjustments that a selling plan makes when a variant is purchased with a selling plan.
The type of price adjustment. An adjustment value can have one of three types: percentage, amount off, or a new price.
Type of adjustment value.
Percentage adjustment value.
The number of orders that the price adjustment applies to. If the price adjustment always applies, then this field is null.
Whether purchasing the selling plan will result in multiple deliveries.
List of all selling plan ids, which are part of this selling plan group.
The product's SEO data
The product's SEO description
The product's SEO title
A globally-unique identifier from Shopify (the Admin number-only format).
A categorization that a product can be tagged with, commonly used for filtering and searching.
The product’s title.
The total quantity of inventory available for the product.
The URL for the product’s page on the shop’s website.
Returns the selected variant
Whether a product is available to be sold based on its current availability status.
The barcode (for example, ISBN, UPC, or GTIN) associated with the variant.
The compare at price of the variant. This can be used to mark a variant as being 'on sale'.
Whether a product is out of stock but still available for purchase (used for backorders).
The product variant's image.
The list of media associated with the variant
Returns a metafield found by namespace and key.
The price of the product variant.
The total sellable quantity of the variant for online sales channels.
Custom attributes that the shopper selected for a product variant at the time of purchase.
The product option’s name.
The product option’s value.
This properties are generally created by a subscription app, SKIO for example. Represents an association between a variant and a selling plan. Selling plan allocations describe which selling plans are available for each variant, and what their impact is on pricing.
A representation of how products and variants can be sold and purchased. For example, an individual selling plan could be '6 weeks of prepaid granola, delivered weekly'.
A globally-unique ID.
A globally-unique identifier from Shopify (the Admin number-only format).
The unique SKU (Stock Keeping Unit) of the product variant.
The title of the product variant.
List of product variants.
Whether a product is available to be sold based on its current availability status.
The barcode (for example, ISBN, UPC, or GTIN) associated with the variant.
The compare at price of the variant. This can be used to mark a variant as being 'on sale'.
Whether a product is out of stock but still available for purchase (used for backorders).
The product variant's image.
Whether this variant is currently selected or not.
Returns a metafield found by namespace and key.
The price of the product variant.
The total sellable quantity of the variant for online sales channels.
Custom attributes that the shopper selected for a product variant at the time of purchase.
The product option’s name.
The product option’s value.
This properties are generally created by a subscription app, SKIO for example. Represents an association between a variant and a selling plan. Selling plan allocations describe which selling plans are available for each variant, and what their impact is on pricing.
A representation of how products and variants can be sold and purchased. For example, an individual selling plan could be '6 weeks of prepaid granola, delivered weekly'.
A globally-unique ID.
A globally-unique identifier from Shopify (the Admin number-only format).
The unique SKU (Stock Keeping Unit) of the product variant.
The title of the product variant.
The product’s vendor name.