Skip to main content

Product

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 Product {
contentItem(
contentItemId: ID!
): ProductContentItem
contentItems(
after: String
before: String
contentType: ProductContentType
first: Int
last: Int
): ProductContentItemConnection
createdAt: Date!
demandHqId: ID!
locale(
localeType: ResonanceLocaleType!
): ProductLocale
optionLabels: [String!]!
productId: ID!
productMetrics: ProductMetrics
publishedAt: Date
seoTitle: String
slug: String!
status: DemandEntityStatus!
storefrontIds: [ID]
tags: ProductTags
title: String!
updatedAt: Date!
updatedBy: ID!
variant(
variantId: ID
): Variant
variants(
after: String
before: String
first: Int
last: Int
): VariantConnection!
vendor: String!
}

Fields

Product.contentItem ● ProductContentItem object

Get a productContentItem for a product

Requires productcontentitem/read permission on the requesting identity

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

Product.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.

Product.contentItems.after ● String scalar

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

Product.contentItems.before ● String scalar

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

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

Returns the first n elements from the list.

Product.contentItems.last ● Int scalar

Returns the last n elements from the list.

Product.createdAt ● Date! non-null scalar

Product.demandHqId ● ID! non-null scalar

Product.locale ● ProductLocale object

Get a single productLocale by ResonanceLocaleType

Requires productlocale/read permission on the requesting identity
Product.locale.localeType ● ResonanceLocaleType! non-null enum

Product.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.

Product.productId ● ID! non-null scalar

Product.productMetrics ● ProductMetrics object

Get productMetrics for a Product

Requires product/read permission

Product.publishedAt ● Date scalar

ISO format date when the product was published. Note that ensuing updates with status set to PUBLISHED will republish and re-set this date.

Product.seoTitle ● String scalar

Title specific for SEO purposes, limit 256 characters.

Product.slug ● String! non-null scalar

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

Product.status ● DemandEntityStatus! non-null enum

The status of the product, can be DRAFT or PUBLISHED.

Product.storefrontIds ● [ID] list scalar

Which storefronts should have access to this product?

Product.tags ● ProductTags object

Get the tags for this product

Product.title ● String! non-null scalar

The title of the product, limit 256 characters.

Product.updatedAt ● Date! non-null scalar

Product.updatedBy ● ID! non-null scalar

Product.variant ● Variant object

Get a single variant by VariantId

Requires demandHqvariant/read permission on the requesting identity
Product.variant.variantId ● ID scalar

Product.variants ● VariantConnection! non-null object

Get a list of variants

Requires demandHqvariant/read permission on the demandHq for the requesting identity
Product.variants.after ● String scalar

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

Product.variants.before ● String scalar

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

Product.variants.first ● Int scalar

Returns the first n elements from the list.

Product.variants.last ● Int scalar

Returns the last n elements from the list.

Product.vendor ● String! non-null scalar

AKA Brand. Limit 256 characters.

Returned by

createProduct mutation ● createProductComposite mutation ● createProductCompositeFromSupplierProducts mutation ● product query ● updateProduct mutation ● updateProducts mutation

Member of

DemandHq object ● ProductConnectionWithSearch object ● ProductEdge object ● Variant object