Skip to main content

PublicProduct

A Product is a part of the Demand Domain and represents a the basic information of a product. Products have many support entities, including variants, which represent SKUs of the product.

type PublicProduct {
contentItem(
contentItemId: ID!
): PublicProductContentItem
contentItems(
after: String
before: String
contentType: ProductContentType
first: Int
last: Int
): ProductContentItemConnection
demandHqId: ID!
locale(
localeType: ResonanceLocaleType!
): PublicProductLocale
optionLabels: [String!]!
productId: ID!
productMetrics: PublicProductMetrics
publishedAt: Date
seoTitle: String
slug: String!
tags: ProductTags
title: String!
variant(
variantId: ID
): PublicVariant
variants(
after: String
before: String
first: Int
last: Int
): PublicVariantConnection!
vendor: String!
}

Fields

PublicProduct.contentItem ● PublicProductContentItem object

Get a productContentItem for a product

Requires productcontentitem/read permission on the requesting identity

PublicProduct.contentItem.contentItemId ● ID! non-null scalar

PublicProduct.contentItems ● ProductContentItemConnection object

Get a list of productContentItems. The sort order is always by position.

Requires productcontentitem/read permission on the DemandHq for the requesting identity.

PublicProduct.contentItems.after ● String scalar

Returns the elements in the list that come after the specified cursor.

PublicProduct.contentItems.before ● String scalar

Returns the elements in the list that come before the specified cursor.

PublicProduct.contentItems.contentType ● ProductContentType enum
PublicProduct.contentItems.first ● Int scalar

Returns the first n elements from the list.

PublicProduct.contentItems.last ● Int scalar

Returns the last n elements from the list.

PublicProduct.demandHqId ● ID! non-null scalar

PublicProduct.locale ● PublicProductLocale object

Get a single productLocale by ResonanceLocaleType.

Requires the "publicproductlocale/read" permission.

PublicProduct.locale.localeType ● ResonanceLocaleType! non-null enum

PublicProduct.optionLabels ● [String!]! non-null scalar

The labels for the possible option groups for this product, i.e. "Color", "Size", "Material", etc. These will match with labelOptions in Variants.

PublicProduct.productId ● ID! non-null scalar

A short description of the product, limit 1000 characters.

PublicProduct.productMetrics ● PublicProductMetrics object

Get productMetrics for a Product

Requires product/read permission

PublicProduct.publishedAt ● Date scalar

ISO format date when the product was published.

PublicProduct.seoTitle ● String scalar

Title specific for SEO purposes, limit 256 characters.

PublicProduct.slug ● String! non-null scalar

Slug for the URL for this product. Limit 128 characters.

PublicProduct.tags ● ProductTags object

Get the tags of the product.

PublicProduct.title ● String! non-null scalar

The title of the product, limit 256 characters.

PublicProduct.variant ● PublicVariant object

Get a single variant by VariantId

Requires publicvariant/read permission on the requesting identity.

PublicProduct.variant.variantId ● ID scalar

PublicProduct.variants ● PublicVariantConnection! non-null object

Get a list of variants

Requires publicvariant/read permission on the demandHq for the requesting identity.

PublicProduct.variants.after ● String scalar

Returns the elements in the list that come after the specified cursor.

PublicProduct.variants.before ● String scalar

Returns the elements in the list that come before the specified cursor.

PublicProduct.variants.first ● Int scalar

Returns the first n elements from the list.

PublicProduct.variants.last ● Int scalar

Returns the last n elements from the list.

PublicProduct.vendor ● String! non-null scalar

The brand of the product, limit 256 characters.

Returned by

product query

Member of

ProductRecommendation object ● PublicProductConnectionWithSearch object ● PublicProductEdge object ● PublicVariant object