ShopifyProduct
interface ShopifyProduct {
id: string
handle: string
title: string
description: string
descriptionHtml: string
availableForSale: boolean
featuredImage: ShopifyImage | null
images: ShopifyImage[]
priceRange: ShopifyPriceRange
compareAtPriceRange: ShopifyPriceRange
options: ShopifyProductOption[]
variants: ShopifyProductVariant[]
sellingPlanGroups: ShopifySellingPlanGroup[]
productType: string
vendor: string
tags: string[]
createdAt: string
updatedAt: string
publishedAt: string
onlineStoreUrl: string | null
seo: ShopifySeo
}
ShopifyProductVariant
interface ShopifyProductVariant {
id: string
title: string
availableForSale: boolean
price: ShopifyMoney
compareAtPrice: ShopifyMoney | null
image: ShopifyImage | null
selectedOptions: Array<{
name: string
value: string
}>
sku: string | null
}
ShopifyProductOption
interface ShopifyProductOption {
id: string
name: string
values: string[]
}
ProductsResult
Response fromopenbridge.products.list()
interface ProductsResult {
items: ShopifyProduct[]
pageInfo: ShopifyPageInfo
}
ProductField
Available fields for.select() on products.
type ProductField =
| 'id'
| 'handle'
| 'title'
| 'description'
| 'descriptionHtml'
| 'availableForSale'
| 'featuredImage'
| 'images'
| 'priceRange'
| 'compareAtPriceRange'
| 'options'
| 'variants'
| 'sellingPlanGroups'
| 'productType'
| 'vendor'
| 'tags'
| 'createdAt'
| 'updatedAt'
| 'publishedAt'
| 'onlineStoreUrl'
| 'seo'
ShopifySellingPlanGroup
A group of selling plans (e.g., “Pre-order options”).interface ShopifySellingPlanGroup {
name: string
options: Array<{ name: string; values: string[] }>
sellingPlans: ShopifyProductSellingPlan[]
}
ShopifyProductSellingPlan
A selling plan within a group (e.g., “$50 deposit”).interface ShopifyProductSellingPlan {
id: string
name: string
description: string | null
options: Array<{ name: string; value: string }>
priceAdjustments: Array<{
adjustmentValue: {
adjustmentPercentage?: number
adjustmentAmount?: ShopifyMoney
price?: ShopifyMoney
}
}>
checkoutCharge: {
type: 'PERCENTAGE' | 'PRICE'
value: {
percentage?: number
amount?: ShopifyMoney
}
}
}