ChemPal Documentation - v1.7.0
    Preparing search index...

    Interface ShopifyProductNode

    Represents a product node from the Shopify GraphQL Storefront API.

    const product: ShopifyProductNode = {
    id: "gid://shopify/Product/6047654445205",
    title: "Gold Testing Kit",
    handle: "gold-test-kit",
    descriptionHtml: "<p>Professional gold testing kit</p>",
    onlineStoreUrl: "https://www.example.com/products/gold-test-kit",
    variants: { edges: [{ node: { title: "Default Title", sku: "GTK-001" } }] },
    };
    interface ShopifyProductNode {
        id: string;
        title: string;
        handle: string;
        vendor?: string;
        productType?: string;
        tags?: string[];
        descriptionHtml: string;
        availableForSale?: boolean;
        onlineStoreUrl: null | string;
        priceRange?: {
            minVariantPrice: ShopifyMoney;
            maxVariantPrice: ShopifyMoney;
        };
        featuredImage?: null
        | { url: string; altText?: null | string };
        media?: { edges: { node: ShopifyMediaNode }[] };
        variants: { edges: { node: ShopifyVariantNode }[] };
    }
    Index

    Properties

    id: string

    Shopify global ID (e.g. "gid://shopify/Product/6047654445205")

    title: string

    Display title of the product

    handle: string

    URL-friendly slug for the product

    vendor?: string

    Manufacturer / brand

    productType?: string

    Product type / category

    tags?: string[]

    Storefront tags

    descriptionHtml: string

    Full product description as HTML

    availableForSale?: boolean

    Whether any variant is available for sale

    onlineStoreUrl: null | string

    Full URL to the product on the online store (null for unpublished products)

    priceRange?: { minVariantPrice: ShopifyMoney; maxVariantPrice: ShopifyMoney }

    Min/max variant price range

    featuredImage?: null | { url: string; altText?: null | string }

    The product's featured (primary) image, returned already transformed to a thumbnail size by the query's url(transform: ...) argument.

    media?: { edges: { node: ShopifyMediaNode }[] }

    Product media (images etc.) in relay-style edges/node format

    variants: { edges: { node: ShopifyVariantNode }[] }

    Product variants in Shopify's relay-style edges/node format