Skip to content

Content types

The types the content domain defines, with the fields other domains add to them.

Objects

ArticleList

Article cards: the articles the editor picked, or else the newest that match its filters on section, topic and category.

FieldTypeDescription
idID!Unique identifier for the article list.
anchorStringThe id an in-page link or the table of contents points to; null where none is set.
audienceAudienceType!Who the block is shown to.
titleStringThe visible title, rendered as the H2.
sectionArticleOverviewPageThe overview the list filters on, for a link to all of its articles; null where the list does not filter on a section.
articles[ArticlePage!]!The articles to show, at most the editor's limit. An article in the list has an empty related list; query that article by its path for its related ones.

ArticleOverviewPage

Implements Page

The overview of one section of articles, such as a blog or the buying guides. The template renders its heading as the H1, with the intro below it.

FieldTypeDescription
idID!Unique identifier for the overview.
nameString!Internal name of the overview.
pathString!URL path of the overview.
translatedPaths[TranslatedPath!]List of translated paths for different locales.
breadcrumbs[Breadcrumb!]Breadcrumb trail for the overview.
metaPageMetaPage metadata for SEO and other purposes.
headingString!Text of the page's one top-level heading, which the template renders as the H1, since no block in an overview's body is its heading.
introStringThe intro below the heading.
featuredArticlePageThe article the editor picked to show first; null where none is picked. Its related list is always empty.
body[Block!]!Content around the article list, composed of blocks.
topicTopicThe topic the overview is narrowed to, on that topic's page below the section, as in /blog/topic/tennis; null on the section's own page. A topic's page keeps the section's id, so its articles are articles(section: id, topic: topic.id), and takes its heading, intro and SEO fields from the topic.
topicPages[TopicPage!]!The topics the section's published articles are about, each with its page below the section, by name: for the topic links and the sitemap. Empty where the store sets no topic path segment.

ArticlePage

Implements Page

An article, such as a blog post, a buying guide or a news item: a page whose text owns it. The template renders its title as the H1, with the lead and the lead image below it.

FieldTypeDescription
idID!Unique identifier for the article.
nameString!Internal name of the article.
headingString!Text of the page's one top-level heading: the title, which the template renders as the H1, since no block in an article's body is its heading.
sectionArticleOverviewPageThe overview the article belongs to, which is its parent; null where it has none.
pathString!URL path of the article.
translatedPaths[TranslatedPath!]List of translated paths for different locales.
breadcrumbs[Breadcrumb!]Breadcrumb trail for the article.
metaPageMetaPage metadata for SEO; its image falls back to the lead image.
titleString!The visible title, which the template renders as the H1.
leadString!The intro below the title, also the card text in an overview.
leadImageContentAssetThe image below the heading, also the card image in an overview.
publishedAtDateThe day the article was published, as shown on the page.
authorAuthorWho wrote the article; null where the editor picked no one or it is not published.
topics[Topic!]!What the article is about, at most three, in the editor's order.
categories[ProductCategory!]!The product categories the article is about.
body[Block!]!The article's text, composed of blocks.
related[ArticlePage!]!The articles to show below this one, at most three: the editor's picks, or where there are none, the newest articles that share a topic with this one. A related article's own related list is always empty, since two articles may name each other; query that article by its path for its related articles.

ArticleResult

One page of articles, newest first.

FieldTypeDescription
items[ArticlePage!]!
paginationPagination!

Author

Who wrote an article, as the byline and the author markup name them.

FieldTypeDescription
idID!Unique identifier for the author.
nameString!The author's name.
roleStringThe author's role, such as tennis coach; null where the editor set none.
photoContentAssetA square photo of the author; null where the editor set none.
bioStringA short bio; null where the editor set none.

Brand

A brand, as content refers to it by key. Its page is where a brand list links to; null where the brand has none.

FieldTypeDescription
keyString!Unique key for the brand.
nameString!The brand's name, in the current locale.
logoProductImageThe brand's logo; null where it has none.
pathStringPath of the brand's page, without a locale prefix; null where it has none.

BrandList

Brand logos that link to their brand pages, in the order the editor placed them.

FieldTypeDescription
idID!Unique identifier for the brand list.
anchorStringThe id an in-page link or the table of contents points to; null where none is set.
audienceAudienceType!Who the block is shown to.
titleStringThe visible title, rendered as the H2.
brands[Brand!]!The brands, each picked by its key; commerce resolves the rest.

CampaignBanner

A campaign: an image with the text beside it, not on it, and one call to action. Its height is capped, so it never fills a phone's first screen. A banner past its visibleUntil is left out of the page.

FieldTypeDescription
idID!Unique identifier for the campaign banner.
anchorStringThe id an in-page link or the table of contents points to; null where none is set.
audienceAudienceType!Who the block is shown to.
titleString!The campaign's title.
textStringA short text beside the image.
imageContentAsset!The image, whose focal point decides how it is cropped on a phone.
linkLinkThe one call to action; null where its target is not published.
visibleUntilDateTimeThe moment the banner disappears; null where it stays. A page holding the banner is cached no longer than this.

CatalogPage

Implements Page

FieldTypeDescription
idID!
productListingConfigProductListingConfig!The listing the page shows: the source's category, else the page's categoryId, with the source's sort as the default order.
nameString!Name of the product listing page.
headingString!Text of the page's one top-level heading, which the page renders itself.
pathString!URL path of the product listing page.
translatedPaths[TranslatedPath!]List of translated paths for different locales.
breadcrumbs[Breadcrumb!]Breadcrumb trail for the product listing page.
metaPageMetaPage metadata for SEO and other purposes.
introStringThe text below the heading, clamped to two lines.
topContent[Block!]Top content of the product listing page, composed of various block types.
bottomContent[Block!]Bottom content of the product listing page, composed of various block types.
categoryIdStringIdentifier of the category associated with this product listing. Owned here: the commerce subgraph extends CatalogPage and marks this @external, so some subgraph has to define it or composition fails.Deprecated: Read source.
sourceProductSourceThe products the listing shows: the page's category, narrowed by its filters, in its sort order. Null where the page sets none of them.
layoutCatalogPageLayoutType!How the page presents its category: a listing, or a landing page.
promos[Promo!]!At most two promo cards inside the product grid: the first at position 4, the second at position 12, on the first page of an unfiltered listing only.
facetFilters[CatalogPageFacetFilter!]!The facet selections that make this page a curated collection of its category, such as one colour of the category's products, to apply to the listing. Empty for the category's own page.Deprecated: Read source.filters.

CatalogPageFacetFilter

One facet of a curated collection and the values it selects. Deprecated with CatalogPage.facetFilters: read ProductSourceFilter.

FieldTypeDescription
keyString!The facet's key, as the product search names it.
values[String!]!The selected values; a product matches any of them.

CategoryList

Entrances to categories: the ones the editor picked, or the children of one category. Commerce resolves each by its key to its name, image and page.

FieldTypeDescription
idID!Unique identifier for the category list.
anchorStringThe id an in-page link or the table of contents points to; null where none is set.
audienceAudienceType!Who the block is shown to.
titleStringThe visible title, rendered as the H2.
categories[ProductCategory!]!The picked categories, in the editor's order; empty where the list shows a category's children.
parentCategoryProductCategoryThe category whose children the list shows; null where the editor picked categories.

Columns

Two to four blocks side by side, stacked in their order on a narrow screen. A project opts into it, since combinations editors keep building become blocks of their own. A column entry placed directly in a page body is answered as columns holding that one entry.

FieldTypeDescription
idID!Unique identifier for the columns.
anchorStringThe id an in-page link or the table of contents points to; null where none is set.
audienceAudienceType!Who the block is shown to.
titleStringThe visible title, rendered as the H2 that labels the section.
ratioColumnsRatioType!How the width is shared; always EQUAL for one, three or four items.
items[ColumnEntry!]!The blocks, one per column: one for a column entry placed in a body.

ContentAsset

Represents a content asset, such as an image or file.

FieldTypeDescription
altStringAlternative text for the asset.
filenameString!Filename of the asset.
nameStringName of the asset.
isExternalUrlBooleanIndicates if the asset URL is external.
titleStringTitle of the asset.
focalPointFocalPointThe point a crop keeps in view, such as for a phone; null where none is set and the image is cropped around its centre.

ContentPage

Implements Page

Represents a content page with various sections and blocks.

FieldTypeDescription
idID!Unique identifier for the content page.
nameString!Name of the content page.
headingString!Text of the page's one top-level heading, which the page renders itself.
headingVisibleBoolean!False keeps the H1 for search engines and screen readers but hides it, for a page whose first block opens it, such as a home page with a campaign banner.
pathString!URL path of the content page.
translatedPaths[TranslatedPath!]List of translated paths for different locales.
breadcrumbs[Breadcrumb!]Breadcrumb trail for the content page.
metaPageMetaPage metadata for SEO and other purposes.
introStringThe text below the heading.
leadImageContentAssetThe image below the heading, with no text on it; also the card image in a list and the fallback for the SEO image.
body[Block]Main content body of the page, composed of various block types.
categories[ProductCategory!]!The product categories the page is about. A product shows the page among its articles when its primary category, or one of that category's ancestors, is among them.

ContentSearchHit

A page or an article that matches a search.

FieldTypeDescription
pagePage!
excerptStringA short plain-text summary of the page, where the source has one.

ContentSearchResult

What the CMS answers to a search term.

FieldTypeDescription
hits[ContentSearchHit!]!The best matching pages and articles, at most limit.
redirectSearchRedirectWhere the CMS's keyword list sends this search term. Null where none matches.

ContentSnippet

Represents a snippet of content that can be used in various places.

FieldTypeDescription
idID!Unique identifier for the content snippet.
keyString!Key for identifying the content snippet.
content[Block!]Content for the snippet.

ContentTeaser

An image beside text, or text alone, with up to two links. Its title is the H2 of the section it opens.

FieldTypeDescription
idID!Unique identifier for the content teaser.
anchorStringThe id an in-page link or the table of contents points to; null where none is set.
audienceAudienceType!Who the block is shown to.
titleString!The visible title, rendered as the H2.
textRichTextThe text beside the image; null where the editor wrote none.
imageContentAssetThe image; null for a teaser of text alone.
links[Link!]!At most two links, in the order the editor placed them; a link whose target is not published is left out.

Faq

FieldTypeDescription
idID!Unique identifier for the Faq.
titleString!
linkResourceLink
groups[FaqGroup!]!

FaqGroup

FieldTypeDescription
idID!Unique identifier for the Faq group.
titleString!Title of the FAQ item list.
items[FaqItem!]!List of FAQ items.

FaqItem

FieldTypeDescription
idID!Unique identifier for the Faq item.
questionString!
answerRichText!

Figure

One key figure: a value with what it measures.

FieldTypeDescription
idID!Unique identifier for the figure.
valueString!The figure as the editor wrote it, such as 98.6%.
labelString!What the value measures.
sourceStringWhere the figure comes from, such as a customer survey; null where none is given.

FigureList

Two to four key figures.

FieldTypeDescription
idID!Unique identifier for the figure list.
anchorStringThe id an in-page link or the table of contents points to; null where none is set.
audienceAudienceType!Who the block is shown to.
titleStringThe visible title, rendered as the H2; null where the editor wrote none.
figures[Figure!]!The figures, in the order the editor placed them.

FocalPoint

A point in an image, in percent from its left and top edges.

FieldTypeDescription
xFloat!Percent from the left edge, from 0 to 100.
yFloat!Percent from the top edge, from 0 to 100.

Hotspot

One product pinned on a shoppable image.

FieldTypeDescription
idID!Unique identifier for the hotspot.
xFloat!Percent of the image's width from its left edge, 0 to 100.
yFloat!Percent of the image's height from its top edge, 0 to 100.
variantProductVariant!The variant the editor picked by its sku; its name, price and stock come from commerce.

Image

One image, or a pair side by side.

FieldTypeDescription
idID!Unique identifier for the image.
imageContentAsset!
secondImageContentAssetA second image, shown beside the first as a pair and below it on a phone; null for one image.

A link with its own label, to one target: a page, a product, a storefront route or a URL. Each target the link does not point at is null, and so is a page that is not published in the current locale.

FieldTypeDescription
labelString!The visible text.
pagePageThe page it opens.
productProductVariantThe product it opens, as the variant the editor picked by its sku; the variant's product links to its page.
routeStorefrontRouteTypeThe storefront route it opens, such as the cart.
urlURLThe URL it opens, for a target outside the site.
variantLinkVariantType!How prominently the link is drawn.

One menu entry: a link, or a heading for the entries below it.

FieldTypeDescription
idID!Unique identifier for the entry.
labelString!The visible text.
linkLinkWhere the entry leads; null where it is a heading for its children, or its target is not published.
children[MenuItem!]!The entries below this one, at most two levels under the top.
promoPromoA card shown beside the entry in a large menu.

Messages

The store's fixed system copy, one entry per store, for the places no editor fills by hand. A field is null where the editor left it empty, so the storefront shows its own default. A project extends the type with fields of its own.

FieldTypeDescription
idID!Unique identifier for the messages.
cartEmptyRichTextShown in a cart without line items.
searchEmptyRichTextShown when a search finds nothing.
notFoundRichTextShown on the page for a path nothing answers.

A menu: the header's, the footer's, or one of the project's own.

FieldTypeDescription
idID!Unique identifier for the menu.
items[MenuItem!]!The top-level entries, in the order the editor placed them.

PageRedirect

Where a path sends a visitor: written by an editor, or by the CMS when a page's path changed, from the old path to the page.

FieldTypeDescription
kindLinkKindType!
pathString!A page's path in the current locale without a locale prefix, or the URL.
pageTypePageTypeThe type of the page a PAGE redirect opens. Null for a URL.
permanentBoolean!True for a moved page (301), false for a temporary redirect (302).

PagesResult

Represents the result of a query for multiple pages.

FieldTypeDescription
results[Page!]!List of pages returned in the result.
totalInt!Total number of pages matching the query.

Product

Fields added by Product review

Product entity containing all product information, variants, and metadata.

FieldTypeDescription
idID!Unique identifier for the product
slugString!URL-friendly slug for the product
localizedSlugs[LocalizedSlug!]!Localized slugs for different localesArguments: locales
nameString!Name of the product
metaResourceMetaMetadata for the product
brandStringBrand of the product
imageProductImageThe primary image associated with the product.
relatedProducts[Product!]Products that are similar. E.g. the same t-shirt in another color.
variantProductVariant!A specific variant, often used to show data in a product card. If no sku is given then the primary variant is returned.Arguments: sku
variants[ProductVariant!]!A list of all variants, often used to show all available options in a product detail page.Arguments: sku
variantDimensions[ProductVariantDimension!]!Product variant dimensions for the product with selection optionsArguments: selectedSku
categories[ProductCategory!]The categories to which the product belongs.
primaryCategoryProductCategoryThe primary category to which the product belongs.
startingPriceTaxedPriceThe lowest price of all variants, often used to communicate the price on the product list page.
reviewsReviewsCustomer reviews for the product
bundleProductBundleThe products sold with this one as a bundle, added together with cartBundleAdd. Null when the product has none that can be bought now.
breadcrumbs[Breadcrumb!]
articles[Page!]Published pages about the product's primary category, or else about its nearest ancestor: the most specific category first, then the newest first. Nullable, so a content service that cannot answer leaves the product intact.
reviewDistribution[ProductReviewRatingCount!]!How many approved reviews gave each rating, from 5 down to 1, including ratings nobody gave
reviewFitDistribution[ProductReviewFitCount!]!How many approved reviews found the size each way, in the order of ProductReviewFitType, including ways nobody chose. All zero where buyers are not asked.
reviewListProductReviewResult!The approved reviews of the productArguments: page, pageSize, rating, sort

ProductCategory

FieldTypeDescription
idID!Unique identifier for the product category.
keyString!Unique key for the product category
nameString!Name of the product category
pathString!URL path for the category
descriptionStringDescription of the product category
ancestors[ProductCategory!]!Ancestor categories in the category hierarchy, root first: the last one is the category's parent.
children[ProductCategory!]!The direct subcategories, in the engine's order.
productCountIntHow many products the category holds, its subcategories included; null where the engine does not count them.
imageProductImageThe category's image; null where it has none or the engine keeps none.

ProductList

FieldTypeDescription
idID!
items[Product!]The products the list's source selects, up to its limit and without the sold-out ones; null where the engine cannot select products by a source.
anchorStringThe id an in-page link or the table of contents points to; null where none is set.
audienceAudienceType!Who the block is shown to.
titleStringThe visible title, rendered as the H2.
variants[ProductVariant!]!The variants the editor picked, in their order; empty where the list has a source.
sourceProductSourceThe products to select where no variants are picked; null where none is set.
limitInt!The most products to show.
linkResourceLinkA link to all of the products, such as their catalog page.

Promo

A card that links somewhere. The same card sits in rich text, in a promo list, in the product grid of a catalog page and in a menu.

FieldTypeDescription
idID!Unique identifier for the promo.
titleString!The card's title.
textStringA short text below the title.
imageContentAssetThe card's image.
linkLinkWhere the card leads; null where its target is not published.

PromoList

Two to four promo cards side by side.

FieldTypeDescription
idID!Unique identifier for the promo list.
anchorStringThe id an in-page link or the table of contents points to; null where none is set.
audienceAudienceType!Who the block is shown to.
titleStringThe visible title, rendered as the H2.
promos[Promo!]!The cards, in the order the editor placed them.

Represents a link to a resource, either internal or external.

FieldTypeDescription
typeResourceLinkType!Type of the resource link.
nameStringName of the linked resource.
valueStringThe URL or identifier for the content link, which can be a product ID, category ID, or page path.
anchorStringThe anchor within the page or content that the link points to, if applicable.
newTabBooleanIndicates if the link should open in a new tab.
assetContentAssetAsset for the link.

RichText

Formatted text, the same whichever CMS wrote it. The document is a vendor- neutral tree that refers to links and embeds by id only; their data is beside it, in links and embeds, so one renderer draws every CMS's text.

The tree's nodes: paragraph, heading (levels 2 to 4, since the page's H1 belongs to the template, so a CMS's h1 reads as 2 and its h5 and h6 as 4, each with an anchor unique in the document), list and listItem, quote, hr, embed, and table with tableRow, tableHeaderCell and tableCell (a cell holds block nodes, and a merged one its colSpan or rowSpan); inline, text with marks (bold, italic, underline, strike, code, superscript, subscript), link and hardBreak. A link to a page that was deleted or is not published is plain text.

Heading levels are relative to where the text is placed: 2 is the top level within the document, and a client nested under a heading of its own shifts them down. Later releases may add node types and marks without notice, so a client renders the children of a node it does not know, and ignores a mark it does not know, rather than failing.

FieldTypeDescription
idID!Unique identifier for the rich text content.
documentJSON!The text as the vendor-neutral tree.
embeds[RichTextEmbed!]!What the tree embeds, each referred to by its id.
links[RichTextLink!]!What the tree links to, resolved for the current locale, each referred to by its id.

RichTextImageEmbed

An image placed in rich text.

FieldTypeDescription
idID!What the tree's embed node refers to.
imageImage!

A link in rich text, resolved by the adapter.

FieldTypeDescription
idID!What the tree's link node refers to.
kindLinkKindType!
pathString!The page's path in the current locale, without a locale prefix, as a page's own path is given; or the URL.
pageTypePageTypeThe type of the page the link opens, so a client routes a catalog page apart from a content page. Null for a URL.
anchorStringThe fragment the link scrolls to, without its #; path already ends in it. Null where the link has none.
openInNewTabBooleanWhether the editor set the link to open in a new tab. Null where the CMS has no such setting, as Contentful has not.

RichTextProductEmbed

A product placed in rich text, by its sku. Commerce resolves the variant, so a fragment can ask for its live price.

FieldTypeDescription
idID!What the tree's embed node refers to.
variantProductVariant!

RichTextPromoEmbed

A promo placed in rich text.

FieldTypeDescription
idID!What the tree's embed node refers to.
promoPromo!

RichTextShoppableImageEmbed

A shoppable image placed in rich text.

FieldTypeDescription
idID!What the tree's embed node refers to.
shoppableImageShoppableImage!

RichTextTipEmbed

A tip placed in rich text.

FieldTypeDescription
idID!What the tree's embed node refers to.
tipTip!

RichTextVideoEmbed

A video placed in rich text.

FieldTypeDescription
idID!What the tree's embed node refers to.
videoYoutubeVideo!

ShoppableImage

One image with two to six products pinned on it, also listed beside or below it.

FieldTypeDescription
idID!Unique identifier for the shoppable image.
anchorStringThe id an in-page link or the table of contents points to; null where none is set.
audienceAudienceType!Who the block is shown to.
titleStringThe visible title, rendered as the H2; null where the editor wrote none.
imageContentAsset!
hotspots[Hotspot!]!The pinned products, in the editor's order.

Site

The store's settings, one per store: its menus, the selling points in the header bar, its social profiles, payment brands and review rating, and the templates the SEO title and description of a page fall back to. In a template, a name in braces, such as {category}, stands for the page's own value.

FieldTypeDescription
idID!Unique identifier for the settings.
headerNavigationNavigationThe header's menu; null where the editor picked none or it is not published.
secondaryNavigationNavigationThe header's secondary menu, such as service or business; null where the editor picked none or it is not published.
footerNavigationNavigationThe footer's menu; null where the editor picked none or it is not published.
usps[Usp!]!The selling points in the header bar, at most four.
socials[SocialLink!]!The store's social profiles, in the editor's order.
paymentMethods[PaymentBrandType!]!The ways to pay the store shows, in the editor's order.
trustRatingTrustRatingThe store's review rating; null unless the editor set its score, best score and count.
catalogSeoTitleStringThe SEO title of a catalog page that sets none, such as {category} | {count} products.
catalogSeoDescriptionStringThe SEO description of a catalog page that sets none.
articleSeoTitleStringThe SEO title of an article that sets none, such as {title} | {section}.
contentSeoTitleStringThe SEO title of a content page that sets none, such as {heading} | Evolve.
topicPathSegmentStringThe path segment between a section and a topic, in the current locale, as in /blog/topic/tennis; null where the editor set none.

SiteSettings

Which page of the site answers each recurring purpose, such as the contact or the returns page, one entry per store. A field is null where the editor picked no page, or the picked page is not published in the requested locale.

FieldTypeDescription
contactPageContentPageThe page to contact the store.
termsPageContentPageThe terms and conditions.
privacyPageContentPageThe privacy statement.
cookiePageContentPageThe cookie statement.
returnsPageContentPageHow returns work.
shippingPageContentPageHow shipping works, its costs and delivery times.

The store's profile on a social network; the site draws the network's icon.

FieldTypeDescription
platformSocialPlatformType!
urlURL!The profile's URL.

Step

One step of a step list.

FieldTypeDescription
idID!Unique identifier for the step.
titleString!The step's title, rendered one level below the list's title.
textStringA short text; null where the editor wrote none.
linkLinkWhere the step continues; null where none is set or its target is not published.

StepList

Two to four numbered steps, such as how an account, a return or a job works.

FieldTypeDescription
idID!Unique identifier for the step list.
anchorStringThe id an in-page link or the table of contents points to; null where none is set.
audienceAudienceType!Who the block is shown to.
titleStringThe visible title, rendered as the H2; null where the editor wrote none.
steps[Step!]!The steps, numbered in the order the editor placed them.

StoreContentPreviewData

Represents data for storing content previews.

FieldTypeDescription
idIDIdentifier for the stored content preview data.

StoreContentPreviewResponse

FieldTypeDescription
dataStoreContentPreviewDataResponse containing the stored content preview data.
previewErrors[StoreContentPreviewError!]List of errors encountered while storing the content preview.

TableOfContents

Links to the anchors on the page. The storefront generates them from the anchors of the page's headings and blocks; the block holds only its title.

FieldTypeDescription
idID!Unique identifier for the table of contents.
anchorStringThe id an in-page link points to; null where none is set.
audienceAudienceType!Who the block is shown to.
titleStringThe visible title; null where the editor left it empty, so the storefront shows its own default.

Tip

A highlighted tip, in a page body or inside rich text.

FieldTypeDescription
idID!Unique identifier for the tip.
anchorStringThe id an in-page link or the table of contents points to; null where none is set.
audienceAudienceType!Who the block is shown to.
labelStringA short label above the text, such as the name of whoever gives the tip.
textString!The tip itself.

Topic

What an article is about, such as tennis or maintenance. A topic gets a page of its own below each section, so it has a name to head that page and a slug for its path.

FieldTypeDescription
idID!Unique identifier for the topic.
nameString!The topic's name, the heading of its page.
slugString!The topic's own part of the path, below a section and the topic path segment.
descriptionStringThe intro of the topic's page; null where the editor set none.
leadImageContentAssetThe image in the topic page's heading; null where the editor set none.

TopicPage

A topic's page below a section of articles.

FieldTypeDescription
topicTopic!
pathString!URL path of the topic's page, in the current locale.
translatedPaths[TranslatedPath!]The topic page's path in each locale where the section, the topic and the segment all have one.

TranslatedPath

Represents a translated path for a specific locale.

FieldTypeDescription
localeString!The locale of the translated path.
pathString!The translated path for the given locale.

TrustRating

The store's average review score at a review service, such as 9.2 out of 10 from 1,284 reviews, as an editor entered it.

FieldTypeDescription
scoreFloat!The average score.
maxScoreFloat!The best score the service gives, such as 5 or 10.
countInt!How many reviews the score averages.
urlURLThe store's page at the review service; null where the editor set none.

Usp

Represents a single Unique Selling Point (USP).

FieldTypeDescription
idID!Unique identifier for the USP (Unique Selling Point).
titleString!Title of the USP.
descriptionStringA second line under the title; null where the editor set none.
iconUspIconTypeThe icon before the title; null where the editor picked none.
linkResourceLinkOptional link associated with the USP.

UspList

The store's selling points, two to six of them.

FieldTypeDescription
idID!Unique identifier for the USP list.
anchorStringThe id an in-page link or the table of contents points to; null where none is set.
audienceAudienceType!Who the block is shown to.
usps[Usp!]!The selling points, in the order the editor placed them.

Video

A YouTube video, played from the privacy-enhanced domain once the visitor consents.

FieldTypeDescription
idID!Unique identifier for the video.
anchorStringThe id an in-page link or the table of contents points to; null where none is set.
audienceAudienceType!Who the block is shown to.
youtubeIdString!The video's id on YouTube, eleven characters.
titleString!The video's accessible name.

YoutubeVideo

A YouTube video embedded in rich text.

FieldTypeDescription
idID!Unique identifier for the video.
youtubeIdString!The YouTube video ID.
autoplayBoolean!Whether the video should autoplay when loaded.
controlsBoolean!Whether the video should show controls like play/pause, volume, etc.
loopBoolean!Whether the video should loop when it reaches the end.

Input objects

CatalogPageFacetFilterInput

One facet of a listing's filter and the values it selects.

FieldTypeDescription
keyString!The facet's key, as the product search names it.
values[String!]!The selected values.

Enums

AudienceType

Who a block is shown to. The storefront applies it in the browser once the session is known, so the page stays cacheable for every visitor. It decides relevance, not access: every variant is in the page source.

EVERYONEEvery visitor.
LOGGED_INOnly a visitor who is logged in.
LOGGED_OUTOnly a visitor who is not logged in, as crawlers are.

CatalogPageLayoutType

How a catalog page presents its category.

LISTINGThe subcategories as chips above the product grid.
LANDINGThe subcategories as tiles and the category's popular products, for a broad category.

ColumnsRatioType

How the width is shared between two columns, in the order they are placed.

EQUALBoth columns are as wide.
NARROW_WIDEThe second column is twice as wide as the first.
WIDE_NARROWThe first column is twice as wide as the second.

ContentVersionType

Specifies different versions of content.

DRAFTDraft version of the content.
PUBLISHEDPublished version of the content.

LinkVariantType

How prominently a link is drawn.

PRIMARYThe main call to action.
SECONDARYA call to action beside the main one.

PageSortOrderType

Specifies sorting options for pages.

NAME_ASCENDINGSort by name in ascending order.
NAME_DESCENDINGSort by name in descending order.

PaymentBrandType

A way to pay the store accepts, which the site draws as that brand's logo.

IDEAL
BANCONTACT
VISA
MASTERCARD
AMERICAN_EXPRESS
MAESTRO
PAYPAL
APPLE_PAY
GOOGLE_PAY
KLARNA
RIVERTY
IN3
SEPA_DIRECT_DEBIT
BANK_TRANSFER
PAY_ON_ACCOUNTPaying an invoice afterwards, as a business customer on account.

ResourceLinkType

Specifies different types of resource links.

EXTERNALExternal URL link.
ASSETAsset link.
PRODUCTProduct content link type.
CATALOGCatalog page content link type.
CONTENTCategory content link type.
APPLICATIONLink to a specific page or section within the application.
INTERNALInternal page link.

SocialPlatformType

A social network a store keeps a profile on.

FACEBOOK
INSTAGRAM
LINKEDIN
PINTEREST
TIKTOK
X
YOUTUBE

StorefrontRouteType

A page the storefront itself serves rather than the CMS. The site maps each to its own path in the current locale.

HOMEThe home page.
ACCOUNTThe customer's account.
ORDERSThe customer's orders.
CARTThe cart.
SEARCHThe search results.
WISHLISTThe customer's wishlist.
RETURNSThe customer's returns.

UspIconType

The icon a selling point shows, from a fixed set the storefront maps to its own glyphs.

TRUCK
INVOICE
LEAF
HEADSET
RETURN
SHIELD
STORE
CLOCK
GIFT
LOCK

Interfaces

Page

A page a route can land on. Every page type implements it, so a route that does not know which type it will get selects these fields here and the rest per type.

FieldTypeDescription
idID!Unique identifier for the page.
nameString!Name of the page.
headingString!Text of the page's one top-level heading, which the page renders itself.
pathString!URL path of the page.
translatedPaths[TranslatedPath!]List of translated paths for different locales.
breadcrumbs[Breadcrumb!]Breadcrumb trail for the page.
metaPageMetaPage metadata for SEO and other purposes.

Implemented by ArticleOverviewPage, ArticlePage, CatalogPage and ContentPage.

Unions

Block

Rich text is also a block of its own, placed directly in a page body.

One of RichText, ArticleList, BrandList, Columns, TableOfContents, Tip, StepList, ShoppableImage, FigureList, CampaignBanner, PromoList, UspList, Video, CategoryList, ContentTeaser or ProductList.

ColumnEntry

Represents content types that can be used in columns.

One of RichText, ShoppableImage, FigureList, UspList, Video, Faq or Image.

RichTextEmbed

What rich text can embed.

One of RichTextImageEmbed, RichTextVideoEmbed, RichTextProductEmbed, RichTextTipEmbed, RichTextShoppableImageEmbed or RichTextPromoEmbed.

StoreContentPreviewError

One of ValidationError.