Skip to main content

Cluster

Product cluster entity with category associations.

Represents a cluster of related products in the system with their category relationships. Provides access to all associated categories for comprehensive cluster organization and navigation.

type Cluster implements ICluster, IBaseProduct, IResource {
id: Int!
clusterId: Int!
categoryId: Int!
attributes(
input: AttributeResultSearchInput
): AttributeResultResponse
categories(
input: ClusterCategorySearchInput
): CategoryResponse
category(
hidden: YesNo
): Category!
categoryPath(
hidden: YesNo
): [Category!]!
crossupsellsFrom(
input: CrossupsellSearchInput
): CrossupsellsResponse!
crossupsellsTo(
input: CrossupsellSearchInput
): CrossupsellsResponse!
favoriteLists(
input: FavoriteListsSearchInput
): FavoriteListsResponse
orderlists(
input: OrderlistSearchInput
): OrderlistsResponse!
products(
input: ClusterProductSearchInput
): [Product!]!
createdAt: DateTime!
lastModifiedAt: DateTime!
options(
input: ClusterOptionSearchInput
): [ClusterOption!]!
drillDowns: [ClusterDrillDown!] @deprecated
defaultProduct(
hidden: Boolean
): Product
config: ClusterConfig
names(
language: String
): [LocalizedString!]!
descriptions(
language: String
): [LocalizedString!]!
shortDescriptions(
language: String
): [LocalizedString!]!
slugs(
language: String
): [LocalizedString!]!
sku: String!
defaultLanguage: String!
priority: Int
metadataTitles: [LocalizedString!]
metadataDescriptions: [LocalizedString!]
metadataKeywords: [LocalizedString!]
metadataCanonicalUrls: [LocalizedString!]
sources: [Source!]!
language: String
class: ProductClass!
hidden: YesNo!
}

Fields

Cluster.id ● Int! non-null scalar

Resource primary identifier

Cluster.clusterId ● Int! non-null scalar

The classID of this cluster

Cluster.categoryId ● Int! non-null scalar

Cluster.attributes ● AttributeResultResponse object

Lists attributes for this cluster based on the search input.

Cluster.attributes.input ● AttributeResultSearchInput input

Cluster.categories ● CategoryResponse object

All categories the cluster belongs to.

Paginated response containing all categories associated with this cluster. Includes categories with full category details and pagination support.

Cluster.categories.input ● ClusterCategorySearchInput input

Search and filter criteria for cluster categories.

Provides filtering, sorting, and pagination options for the cluster's associated categories. When omitted, returns all categories with default pagination settings.

Cluster.category ● Category! non-null object

Primary category of the cluster.

Retrieves the main category that this cluster belongs to, providing hierarchical organization and navigation context.

Cluster.category.hidden ● YesNo enum

Filter by category visibility status.

Y = include only if category is hidden, N = include only if category is visible. When omitted, includes category regardless of visibility status.

Cluster.categoryPath ● [Category!]! non-null object

Complete category path for the cluster.

Retrieves the full hierarchical path from the root category to the cluster's primary category. Returns an ordered array of categories representing the breadcrumb navigation path. Requires authentication for access.

Cluster.categoryPath.hidden ● YesNo enum

Filter path categories by visibility status.

Y = include only hidden categories in path, N = include only visible categories in path. When omitted, includes all categories in the path regardless of visibility status.

Cluster.crossupsellsFrom ● CrossupsellsResponse! non-null object

Retrieve all cross-sell and upsell recommendations where this cluster is the source.

Returns recommendations that are triggered when customers view or interact with any product in this cluster. These are the products or clusters that will be suggested to customers based on products in this cluster. Useful for understanding cluster-level recommendation strategies and scalable product relationships.

Possible errors:

  • CROSSUPSELL_UNKNOWN_ERROR: Failed to search cross-sell/upsell recommendations
  • CROSSUPSELL_CROSS_SERVICE_ERROR: Failed to communicate with external services
Cluster.crossupsellsFrom.input ● CrossupsellSearchInput input

Additional search criteria to filter the recommendations.

If not provided, returns all recommendations where this cluster is the source with default pagination settings. Can be used to further filter by recommendation type, target products, date ranges, or apply custom sorting.

Cluster.crossupsellsTo ● CrossupsellsResponse! non-null object

Retrieve all cross-sell and upsell recommendations where this cluster is the target.

Returns recommendations where products from this cluster are being suggested to customers. These are the source products or clusters that trigger recommendations for products in this cluster. Useful for understanding what drives recommendations for cluster products and optimizing cluster visibility.

Possible errors:

  • CROSSUPSELL_UNKNOWN_ERROR: Failed to search cross-sell/upsell recommendations
  • CROSSUPSELL_CROSS_SERVICE_ERROR: Failed to communicate with external services
Cluster.crossupsellsTo.input ● CrossupsellSearchInput input

Additional search criteria to filter the recommendations.

If not provided, returns all recommendations where this cluster is the target with default pagination settings. Can be used to further filter by recommendation type, source products, date ranges, or apply custom sorting.

Cluster.favoriteLists ● FavoriteListsResponse object

Cluster.favoriteLists.input ● FavoriteListsSearchInput input

Cluster.orderlists ● OrderlistsResponse! non-null object

Cluster.orderlists.input ● OrderlistSearchInput input

Cluster.products ● [Product!]! non-null object

Array of selectable main products for this cluster, when the array contains more than one. Only one can be added per cart/order item

Cluster.products.input ● ClusterProductSearchInput input

Cluster.createdAt ● DateTime! non-null scalar

Product record creation timestamp.

Date and time when this product was first added to the system, used for auditing and product lifecycle tracking.

Cluster.lastModifiedAt ● DateTime! non-null scalar

Product record last modification timestamp.

Date and time when any product information was last updated, used for change tracking and synchronization.

Cluster.options ● [ClusterOption!]! non-null object

Cluster.options.input ● ClusterOptionSearchInput input

Cluster.drillDowns ● [ClusterDrillDown!] deprecated list object

DEPRECATED

Use config.setting instead

The drilldown configuration for this cluster

Cluster.defaultProduct ● Product object

Default product for the cluster.

Returns the primary product that represents this cluster when no specific product option is selected. Used for displaying cluster information and providing a fallback product reference.

Cluster.defaultProduct.hidden ● Boolean scalar

Include hidden products in the lookup.

When true, includes products marked as hidden in the search. When false or not specified, only returns visible products.

Cluster.config ● ClusterConfig object

Cluster.names ● [LocalizedString!]! non-null object

Localized names for the cluster.

Returns translated cluster names. Can be filtered by language code to get names for specific locales.

Cluster.names.language ● String scalar

Language code to filter names.

ISO 639-1 uppercase language code (e.g., 'EN', 'NL', 'DE'). If provided, returns only names for that language.

Cluster.descriptions ● [LocalizedString!]! non-null object

Localized descriptions for the cluster.

Returns translated cluster descriptions. Can be filtered by language code to get descriptions for specific locales.

Cluster.descriptions.language ● String scalar

Language code to filter descriptions.

ISO 639-1 uppercase language code (e.g., 'EN', 'NL', 'DE'). If provided, returns only descriptions for that language.

Cluster.shortDescriptions ● [LocalizedString!]! non-null object

Localized short descriptions for the cluster.

Returns translated cluster short descriptions used in listings and previews. Can be filtered by language code to get descriptions for specific locales.

Cluster.shortDescriptions.language ● String scalar

Language code to filter short descriptions.

ISO 639-1 uppercase language code (e.g., 'EN', 'NL', 'DE'). If provided, returns only short descriptions for that language.

Cluster.slugs ● [LocalizedString!]! non-null object

Localized URL slugs for the cluster.

Returns translated cluster slugs used in URLs and navigation. Can be filtered by language code to get slugs for specific locales.

Cluster.slugs.language ● String scalar

Language code to filter slugs.

ISO 639-1 uppercase language code (e.g., 'EN', 'NL', 'DE'). If provided, returns only slugs for that language.

Cluster.sku ● String! non-null scalar

Stock Keeping Unit for inventory management.

Unique alphanumeric code used for inventory tracking, order processing, and product identification across all systems and channels.

Cluster.defaultLanguage ● String! non-null scalar

The default language for this product or cluster, this is the language to fall back too, when there is no translation available in a specific language.

Cluster.priority ● Int scalar

Cluster.metadataTitles ● [LocalizedString!] list object

[SEO] Localized Metadata title available in multiple languages

Cluster.metadataDescriptions ● [LocalizedString!] list object

[SEO] Localized Metadata description available in multiple languages

Cluster.metadataKeywords ● [LocalizedString!] list object

[SEO] Localized Metadata keywords available in multiple languages

Cluster.metadataCanonicalUrls ● [LocalizedString!] list object

[SEO] Localized Metadata canonical url available in multiple languages

Cluster.sources ● [Source!]! non-null object

Product data sources and external system references.

Returns information about external systems and sources that provide data for this product, used for data lineage and integration management.

Cluster.language ● String scalar

The requested language for this this resource, default to the products default language. ISO 639-1 format.

Cluster.class ● ProductClass! non-null enum

The class of the request resource

Cluster.hidden ● YesNo! non-null enum

The hidden status of this resource.

Interfaces

ICluster interface

The interface for the Cluster type

IBaseProduct interface

Interface for the BaseProduct Type, where both Products and clusters derive from

IResource interface

Returned By

cluster query ● clusterCreate mutation ● clusterUpdate mutation

Member Of

ClusterAssignProductsResponse object ● ClusterUnassignProductsResponse object ● Product object