Skip to main content
These shared models are used by services and extension callbacks. Properties marked readonly are snapshots supplied by the host; use the methods on an editor or draft when a model is editable.

Products and variants

Product meta-field keys use the namespace.key form. The result is grouped by namespace.

Product tags

The host provides the constructor. Import ProductTag as a type where your TypeScript settings require it, and construct it through the runtime-provided value.

Cart

Collections and filters

Metaobject pagination

Use hasNextPage and endCursor with getMetaObjectsByType. The unbounded getAllMetaObjectsByType method is available when the shop’s dataset is known to be small.

PDP media

ProductMediaItem.type is normally "image", "video", "external_video", or "model3d". Media tags are keyed by id per media item and support text, an icon, or both.

GraphQL response envelope

Check errors even when the promise resolves. A resolved promise means the request completed; it does not guarantee that the GraphQL operation had no errors.