Shared data shapes

Reusable money, media, product, pagination, address, message, and navigation shapes.

These pages list the exact data fields available to hosted Vascula themes. Add a root name such as product to a section's ctx_needs, then read it directly as product.title in the template. The ctx. prefix shown here identifies the public contract; do not include that prefix in a Vascula expression. Required fields are present whenever their containing object is present. Optional fields may be absent, and nullable fields may be present as null. [] marks an array item and {key} marks a key selected at runtime. Named types such as Price and Media are detailed on Shared data shapes.

Address#

Reusable fields for values shown as the Address type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Address

Object

Reusable type

Address.address1

String

Required

Address.address2

String

Required

Address.city

String

Required

Address.company

String

Required

Address.country

String

Required

Address.first_name

String

Required

Address.last_name

String

Required

Address.phone

String

Required

Address.postal_code

String

Required

Address.state

String

Required

Any#

Reusable fields for values shown as the Any type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Any

Value

Reusable type

Cart media#

Reusable fields for values shown as the Cart media type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Cart media

Object

Reusable type

Cart media.alt_text

String or null

Required; may be null

Cart media.is_image

Boolean

Required

Cart media.url

URL

Required

Content index#

Reusable fields for values shown as the Content index type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Content index

Object

Reusable type

Content index.id

String

Required

Content index.slug

String

Required

Content index.title

String

Required

Content index.url

URL

Required

Country#

Reusable fields for values shown as the Country type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Country

Object

Reusable type

Country.currency_code

String

Optional

Country.currency_name

String

Optional

Country.currency_symbol

String

Optional

Country.flag

String

Optional

Country.iso_code

String

Required

Country.name

String

Required

Country.selected

Boolean

Optional

Entity#

Reusable fields for values shown as the Entity type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Entity

Object

Reusable type

Entity.description

String

Required

Entity.id

Identifier

Required

Entity.image

Object or null

Required; may be null

Entity.image.url

URL

Required

Entity.metafields

Object keyed by name

Optional

Entity.metafields.{key}

Value

Dynamic key

Entity.name

String

Required

Entity.product_count

Integer

Required

Entity.seo_description

String

Required

Entity.seo_title

String

Required

Entity.slug

String

Required

Entity.url

URL

Optional

Language#

Reusable fields for values shown as the Language type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Language

Object

Reusable type

Language.iso_code

String

Required

Language.name

String

Required

Language.native_name

String

Required

Language.rtl

Boolean

Required

Language.selected

Boolean

Required

Line properties#

Reusable fields for values shown as the Line properties type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Line properties

Object keyed by name

Reusable type

Line properties.{key}

String

Dynamic key

Listing option#

Reusable fields for values shown as the Listing option type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Listing option

Object

Reusable type

Listing option.attribute_name

String

Required

Listing option.attribute_slug

String

Required

Listing option.sub_type

String

Required

Listing option.values

Array of object

Required

Listing option.values[].color

String or null

Required; may be null

Listing option.values[].image_url

String or null

Required; may be null

Listing option.values[].label

String

Required

Listing option.values[].value

String

Required

Media#

Reusable fields for values shown as the Media type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Media

Object

Reusable type

Media.alt_text

String or null

Required; may be null

Media.height

Integer or null

Required; may be null

Media.media_type

String (image, video, model_3d)

Required

Media.preview_image

Object or null

Required; may be null

Media.preview_image.url

URL

Required

Media.url

URL

Required

Media.width

Integer or null

Required; may be null

Reusable fields for values shown as the Menu item type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Menu item

Object

Reusable type

Menu item.children

Array of menu item

Required

Menu item.open_in_new_tab

Boolean

Required

Menu item.title

String

Required

Menu item.url

URL

Required

Reusable fields for values shown as the Menu summary type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Menu summary

Object

Reusable type

Menu summary.handle

String

Required

Menu summary.item_count

Integer

Required

Menu summary.name

String

Required

Message#

Reusable fields for values shown as the Message type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Message

Object

Reusable type

Message.code

String

Required

Message.field

Array of string

Optional

Message.locale

String

Required

Message.message

String

Required

Message.params

Array of object

Required

Message.params[].key

String

Required

Message.params[].value

String

Required

Message.path

Array of string

Optional

Message.request_id

String

Optional

Metafields#

Reusable fields for values shown as the Metafields type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Metafields

Object keyed by name

Reusable type

Metafields.{key}

Value

Dynamic key

Money input#

Reusable fields for values shown as the Money input type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Money input

Object

Reusable type

Money input.amount

Decimal string

Required

Money input.currency_code

String

Required

Option#

Reusable fields for values shown as the Option type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Option

Object

Reusable type

Option.attribute_name

String

Required

Option.attribute_slug

String

Required

Option.sub_type

String

Required

Option.values

Array of object

Required

Option.values[].available_for_sale

Boolean

Required

Option.values[].color

String or null

Required; may be null

Option.values[].image_url

String or null

Required; may be null

Option.values[].label

String

Required

Option.values[].selectable

Boolean

Required

Option.values[].selected

Boolean

Required

Option.values[].value

String

Required

Option.values[].variant_id

Integer or null

Required; may be null

Pagination#

Reusable fields for values shown as the Pagination type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Pagination

Object

Reusable type

Pagination.current_page

Integer

Required

Pagination.has_next

Boolean

Required

Pagination.has_prev

Boolean

Required

Pagination.next_url

String

Required

Pagination.prev_url

String

Required

Pagination.total_count

Integer

Required

Pagination.total_pages

Integer

Required

Reusable fields for values shown as the Pagination link type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Pagination link

Object

Reusable type

Pagination link.current

Boolean

Required

Pagination link.title

String

Required

Pagination link.url

URL

Required

Presented money#

Reusable fields for values shown as the Presented money type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Presented money

Object

Reusable type

Presented money.amount

Decimal string

Required

Presented money.currency_code

String

Required

Presented money.currency_symbol

String

Required

Presented money.formatted

String

Required

Presented money.tax_display

Tax display result

Optional

Price#

Reusable fields for values shown as the Price type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Price

Object

Reusable type

Price.currency_code

String

Required

Price.current

Object

Required

Price.current.amount

Decimal string

Required

Price.current.currency_code

String

Required

Price.current_amount

Decimal string

Required

Price.on_sale

Boolean

Required

Price.regular

Object

Required

Price.regular.amount

Decimal string

Required

Price.regular.currency_code

String

Required

Price.regular_amount

Decimal string

Required

Price.sale

Object

Optional

Price.sale.amount

Decimal string

Required

Price.sale.currency_code

String

Required

Price.sale_amount

String or null

Required; may be null

Price.tax_display

Object

Optional

Price.tax_display.current

Object

Required

Price.tax_display.current.entered

Object

Required

Price.tax_display.current.entered.amount

Decimal string

Required

Price.tax_display.current.entered.currency_code

String

Required

Price.tax_display.current.entered.tax_included

Boolean

Required

Price.tax_display.current.exclusive

Object

Optional

Price.tax_display.current.exclusive.amount

Decimal string

Required

Price.tax_display.current.exclusive.currency_code

String

Required

Price.tax_display.current.exclusive.tax_included

Boolean

Required

Price.tax_display.current.inclusive

Object

Optional

Price.tax_display.current.inclusive.amount

Decimal string

Required

Price.tax_display.current.inclusive.currency_code

String

Required

Price.tax_display.current.inclusive.tax_included

Boolean

Required

Price.tax_display.current.mode

String (inclusive, exclusive)

Required

Price.tax_display.current.primary

Object

Required

Price.tax_display.current.primary.amount

Decimal string

Required

Price.tax_display.current.primary.currency_code

String

Required

Price.tax_display.current.primary.tax_included

Boolean

Required

Price.tax_display.current.status

String (exact, estimated, unavailable, not_applicable, not_collected)

Required

Price.tax_display.current.tax_amount

Decimal string

Required

Price.tax_display.regular

Object

Required

Price.tax_display.regular.entered

Object

Required

Price.tax_display.regular.entered.amount

Decimal string

Required

Price.tax_display.regular.entered.currency_code

String

Required

Price.tax_display.regular.entered.tax_included

Boolean

Required

Price.tax_display.regular.exclusive

Object

Optional

Price.tax_display.regular.exclusive.amount

Decimal string

Required

Price.tax_display.regular.exclusive.currency_code

String

Required

Price.tax_display.regular.exclusive.tax_included

Boolean

Required

Price.tax_display.regular.inclusive

Object

Optional

Price.tax_display.regular.inclusive.amount

Decimal string

Required

Price.tax_display.regular.inclusive.currency_code

String

Required

Price.tax_display.regular.inclusive.tax_included

Boolean

Required

Price.tax_display.regular.mode

String (inclusive, exclusive)

Required

Price.tax_display.regular.primary

Object

Required

Price.tax_display.regular.primary.amount

Decimal string

Required

Price.tax_display.regular.primary.currency_code

String

Required

Price.tax_display.regular.primary.tax_included

Boolean

Required

Price.tax_display.regular.status

String (exact, estimated, unavailable, not_applicable, not_collected)

Required

Price.tax_display.regular.tax_amount

Decimal string

Required

Price.tax_display.sale

Object

Optional

Price.tax_display.sale.entered

Object

Required

Price.tax_display.sale.entered.amount

Decimal string

Required

Price.tax_display.sale.entered.currency_code

String

Required

Price.tax_display.sale.entered.tax_included

Boolean

Required

Price.tax_display.sale.exclusive

Object

Optional

Price.tax_display.sale.exclusive.amount

Decimal string

Required

Price.tax_display.sale.exclusive.currency_code

String

Required

Price.tax_display.sale.exclusive.tax_included

Boolean

Required

Price.tax_display.sale.inclusive

Object

Optional

Price.tax_display.sale.inclusive.amount

Decimal string

Required

Price.tax_display.sale.inclusive.currency_code

String

Required

Price.tax_display.sale.inclusive.tax_included

Boolean

Required

Price.tax_display.sale.mode

String (inclusive, exclusive)

Required

Price.tax_display.sale.primary

Object

Required

Price.tax_display.sale.primary.amount

Decimal string

Required

Price.tax_display.sale.primary.currency_code

String

Required

Price.tax_display.sale.primary.tax_included

Boolean

Required

Price.tax_display.sale.status

String (exact, estimated, unavailable, not_applicable, not_collected)

Required

Price.tax_display.sale.tax_amount

Decimal string

Required

Price range#

Reusable fields for values shown as the Price range type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Price range

Object

Reusable type

Price range.currency_code

String

Required

Price range.has_range

Boolean

Required

Price range.max

Object

Required

Price range.max.amount

Decimal string

Required

Price range.max.currency_code

String

Required

Price range.max_amount

Decimal string

Required

Price range.min

Object

Required

Price range.min.amount

Decimal string

Required

Price range.min.currency_code

String

Required

Price range.min_amount

Decimal string

Required

Price range.tax_display

Object

Optional

Price range.tax_display.max

Object

Required

Price range.tax_display.max.entered

Object

Required

Price range.tax_display.max.entered.amount

Decimal string

Required

Price range.tax_display.max.entered.currency_code

String

Required

Price range.tax_display.max.entered.tax_included

Boolean

Required

Price range.tax_display.max.exclusive

Object

Optional

Price range.tax_display.max.exclusive.amount

Decimal string

Required

Price range.tax_display.max.exclusive.currency_code

String

Required

Price range.tax_display.max.exclusive.tax_included

Boolean

Required

Price range.tax_display.max.inclusive

Object

Optional

Price range.tax_display.max.inclusive.amount

Decimal string

Required

Price range.tax_display.max.inclusive.currency_code

String

Required

Price range.tax_display.max.inclusive.tax_included

Boolean

Required

Price range.tax_display.max.mode

String (inclusive, exclusive)

Required

Price range.tax_display.max.primary

Object

Required

Price range.tax_display.max.primary.amount

Decimal string

Required

Price range.tax_display.max.primary.currency_code

String

Required

Price range.tax_display.max.primary.tax_included

Boolean

Required

Price range.tax_display.max.status

String (exact, estimated, unavailable, not_applicable, not_collected)

Required

Price range.tax_display.max.tax_amount

Decimal string

Required

Price range.tax_display.min

Object

Required

Price range.tax_display.min.entered

Object

Required

Price range.tax_display.min.entered.amount

Decimal string

Required

Price range.tax_display.min.entered.currency_code

String

Required

Price range.tax_display.min.entered.tax_included

Boolean

Required

Price range.tax_display.min.exclusive

Object

Optional

Price range.tax_display.min.exclusive.amount

Decimal string

Required

Price range.tax_display.min.exclusive.currency_code

String

Required

Price range.tax_display.min.exclusive.tax_included

Boolean

Required

Price range.tax_display.min.inclusive

Object

Optional

Price range.tax_display.min.inclusive.amount

Decimal string

Required

Price range.tax_display.min.inclusive.currency_code

String

Required

Price range.tax_display.min.inclusive.tax_included

Boolean

Required

Price range.tax_display.min.mode

String (inclusive, exclusive)

Required

Price range.tax_display.min.primary

Object

Required

Price range.tax_display.min.primary.amount

Decimal string

Required

Price range.tax_display.min.primary.currency_code

String

Required

Price range.tax_display.min.primary.tax_included

Boolean

Required

Price range.tax_display.min.status

String (exact, estimated, unavailable, not_applicable, not_collected)

Required

Price range.tax_display.min.tax_amount

Decimal string

Required

Price tier#

Reusable fields for values shown as the Price tier type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Price tier

Object

Reusable type

Price tier.amount

Decimal string

Required

Price tier.min_quantity

Integer

Required

Price tier.percent

Decimal string

Required

Price tier.price

Object

Required

Price tier.price.amount

Decimal string

Required

Price tier.price.currency_code

String

Required

Product card#

Reusable fields for values shown as the Product card type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Product card

Object

Reusable type

Product card.available_for_sale

Boolean

Required

Product card.display_variant

Variant or null

Optional; may be null

Product card.featured_image

Object or null

Required; may be null

Product card.featured_image.alt_text

String or null

Required; may be null

Product card.featured_image.height

Integer or null

Required; may be null

Product card.featured_image.media_type

String (image, video, model_3d)

Required

Product card.featured_image.preview_image

Object or null

Required; may be null

Product card.featured_image.preview_image.url

URL

Required

Product card.featured_image.url

URL

Required

Product card.featured_image.width

Integer or null

Required; may be null

Product card.id

Integer

Required

Product card.is_gift_card

Boolean

Required

Product card.media

Object or null

Optional; may be null

Product card.media.alt_text

String or null

Required; may be null

Product card.media.height

Integer or null

Required; may be null

Product card.media.media_type

String (image, video, model_3d)

Required

Product card.media.preview_image

Object or null

Required; may be null

Product card.media.preview_image.url

URL

Required

Product card.media.url

URL

Required

Product card.media.width

Integer or null

Required; may be null

Product card.metafields

Object keyed by name

Optional

Product card.metafields.{key}

Value

Dynamic key

Product card.options

Array of object

Optional

Product card.options[].attribute_name

String

Required

Product card.options[].attribute_slug

String

Required

Product card.options[].sub_type

String

Required

Product card.options[].values

Array of object

Required

Product card.options[].values[].color

String or null

Required; may be null

Product card.options[].values[].image_url

String or null

Required; may be null

Product card.options[].values[].label

String

Required

Product card.options[].values[].value

String

Required

Product card.price

Object or null

Required; may be null

Product card.price.currency_code

String

Required

Product card.price.current

Object

Required

Product card.price.current.amount

Decimal string

Required

Product card.price.current.currency_code

String

Required

Product card.price.current_amount

Decimal string

Required

Product card.price.on_sale

Boolean

Required

Product card.price.regular

Object

Required

Product card.price.regular.amount

Decimal string

Required

Product card.price.regular.currency_code

String

Required

Product card.price.regular_amount

Decimal string

Required

Product card.price.sale

Object

Optional

Product card.price.sale.amount

Decimal string

Required

Product card.price.sale.currency_code

String

Required

Product card.price.sale_amount

String or null

Required; may be null

Product card.price.tax_display

Object

Optional

Product card.price.tax_display.current

Object

Required

Product card.price.tax_display.current.entered

Object

Required

Product card.price.tax_display.current.entered.amount

Decimal string

Required

Product card.price.tax_display.current.entered.currency_code

String

Required

Product card.price.tax_display.current.entered.tax_included

Boolean

Required

Product card.price.tax_display.current.exclusive

Object

Optional

Product card.price.tax_display.current.exclusive.amount

Decimal string

Required

Product card.price.tax_display.current.exclusive.currency_code

String

Required

Product card.price.tax_display.current.exclusive.tax_included

Boolean

Required

Product card.price.tax_display.current.inclusive

Object

Optional

Product card.price.tax_display.current.inclusive.amount

Decimal string

Required

Product card.price.tax_display.current.inclusive.currency_code

String

Required

Product card.price.tax_display.current.inclusive.tax_included

Boolean

Required

Product card.price.tax_display.current.mode

String (inclusive, exclusive)

Required

Product card.price.tax_display.current.primary

Object

Required

Product card.price.tax_display.current.primary.amount

Decimal string

Required

Product card.price.tax_display.current.primary.currency_code

String

Required

Product card.price.tax_display.current.primary.tax_included

Boolean

Required

Product card.price.tax_display.current.status

String (exact, estimated, unavailable, not_applicable, not_collected)

Required

Product card.price.tax_display.current.tax_amount

Decimal string

Required

Product card.price.tax_display.regular

Object

Required

Product card.price.tax_display.regular.entered

Object

Required

Product card.price.tax_display.regular.entered.amount

Decimal string

Required

Product card.price.tax_display.regular.entered.currency_code

String

Required

Product card.price.tax_display.regular.entered.tax_included

Boolean

Required

Product card.price.tax_display.regular.exclusive

Object

Optional

Product card.price.tax_display.regular.exclusive.amount

Decimal string

Required

Product card.price.tax_display.regular.exclusive.currency_code

String

Required

Product card.price.tax_display.regular.exclusive.tax_included

Boolean

Required

Product card.price.tax_display.regular.inclusive

Object

Optional

Product card.price.tax_display.regular.inclusive.amount

Decimal string

Required

Product card.price.tax_display.regular.inclusive.currency_code

String

Required

Product card.price.tax_display.regular.inclusive.tax_included

Boolean

Required

Product card.price.tax_display.regular.mode

String (inclusive, exclusive)

Required

Product card.price.tax_display.regular.primary

Object

Required

Product card.price.tax_display.regular.primary.amount

Decimal string

Required

Product card.price.tax_display.regular.primary.currency_code

String

Required

Product card.price.tax_display.regular.primary.tax_included

Boolean

Required

Product card.price.tax_display.regular.status

String (exact, estimated, unavailable, not_applicable, not_collected)

Required

Product card.price.tax_display.regular.tax_amount

Decimal string

Required

Product card.price.tax_display.sale

Object

Optional

Product card.price.tax_display.sale.entered

Object

Required

Product card.price.tax_display.sale.entered.amount

Decimal string

Required

Product card.price.tax_display.sale.entered.currency_code

String

Required

Product card.price.tax_display.sale.entered.tax_included

Boolean

Required

Product card.price.tax_display.sale.exclusive

Object

Optional

Product card.price.tax_display.sale.exclusive.amount

Decimal string

Required

Product card.price.tax_display.sale.exclusive.currency_code

String

Required

Product card.price.tax_display.sale.exclusive.tax_included

Boolean

Required

Product card.price.tax_display.sale.inclusive

Object

Optional

Product card.price.tax_display.sale.inclusive.amount

Decimal string

Required

Product card.price.tax_display.sale.inclusive.currency_code

String

Required

Product card.price.tax_display.sale.inclusive.tax_included

Boolean

Required

Product card.price.tax_display.sale.mode

String (inclusive, exclusive)

Required

Product card.price.tax_display.sale.primary

Object

Required

Product card.price.tax_display.sale.primary.amount

Decimal string

Required

Product card.price.tax_display.sale.primary.currency_code

String

Required

Product card.price.tax_display.sale.primary.tax_included

Boolean

Required

Product card.price.tax_display.sale.status

String (exact, estimated, unavailable, not_applicable, not_collected)

Required

Product card.price.tax_display.sale.tax_amount

Decimal string

Required

Product card.price_range

Object or null

Required; may be null

Product card.price_range.currency_code

String

Required

Product card.price_range.has_range

Boolean

Required

Product card.price_range.max

Object

Required

Product card.price_range.max.amount

Decimal string

Required

Product card.price_range.max.currency_code

String

Required

Product card.price_range.max_amount

Decimal string

Required

Product card.price_range.min

Object

Required

Product card.price_range.min.amount

Decimal string

Required

Product card.price_range.min.currency_code

String

Required

Product card.price_range.min_amount

Decimal string

Required

Product card.price_range.tax_display

Object

Optional

Product card.price_range.tax_display.max

Object

Required

Product card.price_range.tax_display.max.entered

Object

Required

Product card.price_range.tax_display.max.entered.amount

Decimal string

Required

Product card.price_range.tax_display.max.entered.currency_code

String

Required

Product card.price_range.tax_display.max.entered.tax_included

Boolean

Required

Product card.price_range.tax_display.max.exclusive

Object

Optional

Product card.price_range.tax_display.max.exclusive.amount

Decimal string

Required

Product card.price_range.tax_display.max.exclusive.currency_code

String

Required

Product card.price_range.tax_display.max.exclusive.tax_included

Boolean

Required

Product card.price_range.tax_display.max.inclusive

Object

Optional

Product card.price_range.tax_display.max.inclusive.amount

Decimal string

Required

Product card.price_range.tax_display.max.inclusive.currency_code

String

Required

Product card.price_range.tax_display.max.inclusive.tax_included

Boolean

Required

Product card.price_range.tax_display.max.mode

String (inclusive, exclusive)

Required

Product card.price_range.tax_display.max.primary

Object

Required

Product card.price_range.tax_display.max.primary.amount

Decimal string

Required

Product card.price_range.tax_display.max.primary.currency_code

String

Required

Product card.price_range.tax_display.max.primary.tax_included

Boolean

Required

Product card.price_range.tax_display.max.status

String (exact, estimated, unavailable, not_applicable, not_collected)

Required

Product card.price_range.tax_display.max.tax_amount

Decimal string

Required

Product card.price_range.tax_display.min

Object

Required

Product card.price_range.tax_display.min.entered

Object

Required

Product card.price_range.tax_display.min.entered.amount

Decimal string

Required

Product card.price_range.tax_display.min.entered.currency_code

String

Required

Product card.price_range.tax_display.min.entered.tax_included

Boolean

Required

Product card.price_range.tax_display.min.exclusive

Object

Optional

Product card.price_range.tax_display.min.exclusive.amount

Decimal string

Required

Product card.price_range.tax_display.min.exclusive.currency_code

String

Required

Product card.price_range.tax_display.min.exclusive.tax_included

Boolean

Required

Product card.price_range.tax_display.min.inclusive

Object

Optional

Product card.price_range.tax_display.min.inclusive.amount

Decimal string

Required

Product card.price_range.tax_display.min.inclusive.currency_code

String

Required

Product card.price_range.tax_display.min.inclusive.tax_included

Boolean

Required

Product card.price_range.tax_display.min.mode

String (inclusive, exclusive)

Required

Product card.price_range.tax_display.min.primary

Object

Required

Product card.price_range.tax_display.min.primary.amount

Decimal string

Required

Product card.price_range.tax_display.min.primary.currency_code

String

Required

Product card.price_range.tax_display.min.primary.tax_included

Boolean

Required

Product card.price_range.tax_display.min.status

String (exact, estimated, unavailable, not_applicable, not_collected)

Required

Product card.price_range.tax_display.min.tax_amount

Decimal string

Required

Product card.price_tiers

Array of price tier

Optional

Product card.purchase_state

String

Required

Product card.rating

Object

Optional

Product card.rating.average

Number

Required

Product card.rating.count

Integer

Required

Product card.requested_options

Array of object

Optional

Product card.requested_options[].attribute_name

String

Required

Product card.requested_options[].attribute_slug

String

Required

Product card.requested_options[].option_label

String

Required

Product card.requested_options[].option_value

String

Required

Product card.secondary_image

Object or null

Optional; may be null

Product card.secondary_image.alt_text

String or null

Required; may be null

Product card.secondary_image.height

Integer or null

Required; may be null

Product card.secondary_image.media_type

String (image, video, model_3d)

Required

Product card.secondary_image.preview_image

Object or null

Required; may be null

Product card.secondary_image.preview_image.url

URL

Required

Product card.secondary_image.url

URL

Required

Product card.secondary_image.width

Integer or null

Required; may be null

Product card.selected_variant

Variant or null

Optional; may be null

Product card.selection_complete

Boolean

Optional

Product card.session_state

Object

Optional

Product card.session_state.cart

Object

Required

Product card.session_state.cart.direct_line_count

Integer

Required

Product card.session_state.cart.direct_quantity

Integer

Required

Product card.session_state.cart.line_count

Integer

Required

Product card.session_state.cart.quantity

Integer

Required

Product card.session_state.wishlist

Object

Required

Product card.session_state.wishlist.direct_item_count

Integer

Required

Product card.session_state.wishlist.direct_saved

Boolean

Required

Product card.session_state.wishlist.item_count

Integer

Required

Product card.session_state.wishlist.saved

Boolean

Required

Product card.short_description

String or null

Required; may be null

Product card.slug

String

Optional

Product card.title

String

Required

Product card.type

String

Required

Product card.url

URL

Required

Product card.variant_matrix

Array of variant matrix row

Optional

Product card.vendor

String or null

Required; may be null

Rating#

Reusable fields for values shown as the Rating type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Rating

Object

Reusable type

Rating.average

Number

Required

Rating.count

Integer

Required

Selected option#

Reusable fields for values shown as the Selected option type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Selected option

Object

Reusable type

Selected option.attribute_name

String

Required

Selected option.attribute_slug

String

Required

Selected option.option_label

String

Required

Selected option.option_value

String

Required

Tax display result#

Reusable fields for values shown as the Tax display result type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Tax display result

Object

Reusable type

Tax display result.entered

Object

Required

Tax display result.entered.amount

Decimal string

Required

Tax display result.entered.currency_code

String

Required

Tax display result.entered.tax_included

Boolean

Required

Tax display result.exclusive

Object

Optional

Tax display result.exclusive.amount

Decimal string

Required

Tax display result.exclusive.currency_code

String

Required

Tax display result.exclusive.tax_included

Boolean

Required

Tax display result.inclusive

Object

Optional

Tax display result.inclusive.amount

Decimal string

Required

Tax display result.inclusive.currency_code

String

Required

Tax display result.inclusive.tax_included

Boolean

Required

Tax display result.mode

String (inclusive, exclusive)

Required

Tax display result.primary

Object

Required

Tax display result.primary.amount

Decimal string

Required

Tax display result.primary.currency_code

String

Required

Tax display result.primary.tax_included

Boolean

Required

Tax display result.status

String (exact, estimated, unavailable, not_applicable, not_collected)

Required

Tax display result.tax_amount

Decimal string

Required

Variant#

Reusable fields for values shown as the Variant type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Variant

Object

Reusable type

Variant.available_for_sale

Boolean

Required

Variant.id

Integer

Required

Variant.image

Object or null

Required; may be null

Variant.image.alt_text

String or null

Required; may be null

Variant.image.height

Integer or null

Required; may be null

Variant.image.media_type

String (image, video, model_3d)

Required

Variant.image.preview_image

Object or null

Required; may be null

Variant.image.preview_image.url

URL

Required

Variant.image.url

URL

Required

Variant.image.width

Integer or null

Required; may be null

Variant.inventory_status

String

Required

Variant.max_order_quantity

Integer or null

Required; may be null

Variant.metafields

Object keyed by name

Optional

Variant.metafields.{key}

Value

Dynamic key

Variant.notify_me_eligible

Boolean

Required

Variant.price

Object or null

Required; may be null

Variant.price.currency_code

String

Required

Variant.price.current

Object

Required

Variant.price.current.amount

Decimal string

Required

Variant.price.current.currency_code

String

Required

Variant.price.current_amount

Decimal string

Required

Variant.price.on_sale

Boolean

Required

Variant.price.regular

Object

Required

Variant.price.regular.amount

Decimal string

Required

Variant.price.regular.currency_code

String

Required

Variant.price.regular_amount

Decimal string

Required

Variant.price.sale

Object

Optional

Variant.price.sale.amount

Decimal string

Required

Variant.price.sale.currency_code

String

Required

Variant.price.sale_amount

String or null

Required; may be null

Variant.price.tax_display

Object

Optional

Variant.price.tax_display.current

Object

Required

Variant.price.tax_display.current.entered

Object

Required

Variant.price.tax_display.current.entered.amount

Decimal string

Required

Variant.price.tax_display.current.entered.currency_code

String

Required

Variant.price.tax_display.current.entered.tax_included

Boolean

Required

Variant.price.tax_display.current.exclusive

Object

Optional

Variant.price.tax_display.current.exclusive.amount

Decimal string

Required

Variant.price.tax_display.current.exclusive.currency_code

String

Required

Variant.price.tax_display.current.exclusive.tax_included

Boolean

Required

Variant.price.tax_display.current.inclusive

Object

Optional

Variant.price.tax_display.current.inclusive.amount

Decimal string

Required

Variant.price.tax_display.current.inclusive.currency_code

String

Required

Variant.price.tax_display.current.inclusive.tax_included

Boolean

Required

Variant.price.tax_display.current.mode

String (inclusive, exclusive)

Required

Variant.price.tax_display.current.primary

Object

Required

Variant.price.tax_display.current.primary.amount

Decimal string

Required

Variant.price.tax_display.current.primary.currency_code

String

Required

Variant.price.tax_display.current.primary.tax_included

Boolean

Required

Variant.price.tax_display.current.status

String (exact, estimated, unavailable, not_applicable, not_collected)

Required

Variant.price.tax_display.current.tax_amount

Decimal string

Required

Variant.price.tax_display.regular

Object

Required

Variant.price.tax_display.regular.entered

Object

Required

Variant.price.tax_display.regular.entered.amount

Decimal string

Required

Variant.price.tax_display.regular.entered.currency_code

String

Required

Variant.price.tax_display.regular.entered.tax_included

Boolean

Required

Variant.price.tax_display.regular.exclusive

Object

Optional

Variant.price.tax_display.regular.exclusive.amount

Decimal string

Required

Variant.price.tax_display.regular.exclusive.currency_code

String

Required

Variant.price.tax_display.regular.exclusive.tax_included

Boolean

Required

Variant.price.tax_display.regular.inclusive

Object

Optional

Variant.price.tax_display.regular.inclusive.amount

Decimal string

Required

Variant.price.tax_display.regular.inclusive.currency_code

String

Required

Variant.price.tax_display.regular.inclusive.tax_included

Boolean

Required

Variant.price.tax_display.regular.mode

String (inclusive, exclusive)

Required

Variant.price.tax_display.regular.primary

Object

Required

Variant.price.tax_display.regular.primary.amount

Decimal string

Required

Variant.price.tax_display.regular.primary.currency_code

String

Required

Variant.price.tax_display.regular.primary.tax_included

Boolean

Required

Variant.price.tax_display.regular.status

String (exact, estimated, unavailable, not_applicable, not_collected)

Required

Variant.price.tax_display.regular.tax_amount

Decimal string

Required

Variant.price.tax_display.sale

Object

Optional

Variant.price.tax_display.sale.entered

Object

Required

Variant.price.tax_display.sale.entered.amount

Decimal string

Required

Variant.price.tax_display.sale.entered.currency_code

String

Required

Variant.price.tax_display.sale.entered.tax_included

Boolean

Required

Variant.price.tax_display.sale.exclusive

Object

Optional

Variant.price.tax_display.sale.exclusive.amount

Decimal string

Required

Variant.price.tax_display.sale.exclusive.currency_code

String

Required

Variant.price.tax_display.sale.exclusive.tax_included

Boolean

Required

Variant.price.tax_display.sale.inclusive

Object

Optional

Variant.price.tax_display.sale.inclusive.amount

Decimal string

Required

Variant.price.tax_display.sale.inclusive.currency_code

String

Required

Variant.price.tax_display.sale.inclusive.tax_included

Boolean

Required

Variant.price.tax_display.sale.mode

String (inclusive, exclusive)

Required

Variant.price.tax_display.sale.primary

Object

Required

Variant.price.tax_display.sale.primary.amount

Decimal string

Required

Variant.price.tax_display.sale.primary.currency_code

String

Required

Variant.price.tax_display.sale.primary.tax_included

Boolean

Required

Variant.price.tax_display.sale.status

String (exact, estimated, unavailable, not_applicable, not_collected)

Required

Variant.price.tax_display.sale.tax_amount

Decimal string

Required

Variant.price_tiers

Array of price tier

Required

Variant.purchase_state

String

Required

Variant.quantity_available

Integer or null

Optional; may be null

Variant.quantity_max

Integer or null

Required; may be null

Variant.selected_options

Array of object

Required

Variant.selected_options[].attribute_name

String

Required

Variant.selected_options[].attribute_slug

String

Required

Variant.selected_options[].option_label

String

Required

Variant.selected_options[].option_value

String

Required

Variant.session_state

Object

Optional

Variant.session_state.cart

Object

Required

Variant.session_state.cart.direct_line_count

Integer

Required

Variant.session_state.cart.direct_quantity

Integer

Required

Variant.session_state.cart.line_count

Integer

Required

Variant.session_state.cart.quantity

Integer

Required

Variant.session_state.wishlist

Object

Required

Variant.session_state.wishlist.direct_item_count

Integer

Required

Variant.session_state.wishlist.direct_saved

Boolean

Required

Variant.session_state.wishlist.item_count

Integer

Required

Variant.session_state.wishlist.saved

Boolean

Required

Variant.sku

String or null

Required; may be null

Variant.title

String or null

Required; may be null

Variant matrix row#

Reusable fields for values shown as the Variant matrix row type in this reference. The containing CTX field determines availability.

Field

Type

Requirement

Variant matrix row

Object

Reusable type

Variant matrix row.available_for_sale

Boolean

Required

Variant matrix row.id

Integer

Required

Variant matrix row.options

Object keyed by name

Required

Variant matrix row.options.{key}

String

Dynamic key

Variant matrix row.price

Object

Optional

Variant matrix row.price.amount

Decimal string

Required

Variant matrix row.price.currency_code

String

Required

Variant matrix row.price_str

String

Optional

Variant matrix row.regular_price_str

String

Optional

Variant matrix row.title

String

Required