1. Catalog service

Catalog and Relationship policies

Version:

The Catalog plugin contributes catalog and catalog relationship policies that define behavior for the functionality provided by the plugin.

Note

Do not extend or inherit from out-of-the-box policies; instead, create your own.

You can change the values of default policies by modifying the PolicySet JSON or the Environment JSON, depending on where the policy is defined, and then re-running Bootstrap.

The following policies can be configured through the Catalog plug-in.

PolicyDescriptionProperties / Default Values
CatalogCachePolicyDefines cache settings for some catalog lists.Expiration / 300000 (this represent miliseconds)

AllowCaching/ true

CatalogsCacheName/ "Catalogs"

CategoriesCacheName/ "Categories"

RelationshipsCacheName/ "Relationships"

SellableItemsCacheName/"SellableItems"

AssociatedCatalogsCacheName/"AssociatedCatalogs"

NonAssociatedCatalogsCacheName/ "NonAssociatedCatalogs"
ProductCachePolicyDefines the caching policy for catalogs and products.
GlobalCatalogPolicyDefines global settings for catalogs.MaxCatalogLength/ 128

MaxSellableItemLength/ 50

MaxSellableItemVariationLength/ 50

MaxCategoryLength/ 50

MaxRelationshipDefinitionLength/ 50

AllowPromotionsToBeReturnedWithSellableItem - returns promotion information with the sellable item. To improve performance, set the property to false so that no promotion information is returned even if it is asked for. Default is false.

ReturnPriceAndInventoryWithFreeGiftSelections - retrieves price and stock information for the Free Gift Selection when the GetCart method is executed. To improve performance, set the property to false. Default is true.
ProductLoggingPolicyDefines the logging policy for products.
VariationOptionPolicyDefines the sellable item variation policy.
KnownBundleTypePolicyDefines the known type of the product bundle.  Currently, supported type is static
KnownCatalogActionsPolicyDefines the catalog and category action names (e.g., add, edit, delete).AddCatalog / "AddCatalog"

DeleteCatalog / "DeleteCatalog"

EditCatalog / "EditCatalog"

AddCategory / "AddCategory"

EditCategory / "EditCategory"

SelectCategoryDeleteOption / "SelectCategoryDeleteOption"

ReparentItem / "Reparent"

AddSellableItemVariant / "AddSellableItemVariant"

DisableSellableItemVariant / "DisableSellableItemVariant"

DeleteSellableItemVariant / "DeleteSellableItemVariant"

ReparentItemConfirmation / "ReparentConfirmation"

AddSellableItem / "AddSellableItem"

DeleteSellableItem / "DeleteSellableItem"

AssociateSellableItemToCatalog / "AssociateSellableItemToCatalog"

AssociateSellableItemToCategory / "AssociateSellableItemToCategory"

AssociateCategoryToCategoryOrCatalog / "AssociateCategoryToCategoryOrCatalog"

EditSellableItemDetails / "EditSellableItemDetails"

EditSellableItemIds / "EditSellableItemIds"

EditSellableItemDisplayInformation / "EditSellableItemDisplayInformation"

EditSellableItemCustomerReviews / "EditSellableItemCustomerReviews"

EditSellableItemSpecifications / "EditSellableItemSpecifications"

EditSellableItemPricing / "EditSellableItemPricing"

AddSellableItemListPrice / "AddSellableItemListPrice"

EditSellableItemListPrice / "EditSellableItemListPrice"

RemoveSellableItemListPrice / "RemoveSellableItemListPrice"

AddSellableItemImage / "AddSellableItemImage"

RemoveSellableItemImage / "RemoveSellableItemImage"

PaginateCategoryList / "PaginateCategoryList"

DeleteCategory / "DeleteCategory"

DisassociateItem / "DisassociateItem"

ManageItemDefinitions / "ManageItemDefinitions"

SelectCatalogToAssociateComposerTemplateToItemDefinitions / "SelectCatalogToAssociateComposerTemplateToItemDefinitions"

AssociateComposerTemplateToItemDefinitions / "AssociateComposerTemplateToItemDefinitions"
KnownCatalogListsPolicyDefines the names for lists of catalogs, catalog products, categories, sellable items, relationship types.CatalogProducts / "CatalogProducts"

CatalogItems / "CatalogItems"

Catalogs / $"{CommerceEntity.ListName<Catalog>()}"

Categories / $"{CommerceEntity.ListName<Category>()}"

SellableItems /$"{CommerceEntity.ListName<SellableItem>()}"

PurgeCategories / "PurgeCategories"

PurgeCatalogs / "PurgeCatalogs"
KnownCatalogViewsPolicyDefines the names of the views for catalogs, categories, sellable items.MerchandisingDashboard /"MerchandisingDashboard"

PickParentCategory /"PickParentCategory"

Catalogs /"Catalogs"

Categories /"Categories"

PickParentConfirmation /"PickParentConfirmation"

CategoryToAssociate /"CategoryToAssociate"

SellableItemVariants /"SellableItemVariants"

SellableItemPricing /"SellableItemPricing"

SellableItemListPricing /"SellableItemListPricing"

Variant /"Variant"

SellableItems /"SellableItems"

SellableItem /"SellableItem"

DeleteSellableItem /"DeleteSellableItem"

ConnectCatalog /"ConnectCatalog"

ConnectCategory /"ConnectCategory"

ConnectSellableItem /"ConnectSellableItem"

Master /"Master"

Summary /"Summary"

Details /"Details"

AddSellableItemImage /"AddSellableItemImage"

DeleteCategory /"DeleteCategory"

ManageItemDefinitions /"ManageItemDefinitions"

AssociateComposerTemplateToItemDefinitions /"AssociateComposerTemplateToItemDefinitions"
VariationPropertyPolicyDisplays facets such as color or size variants on the Storefront product details page.PropertyNames / Enumerable.Empty<string>()
SitecoreCatalogIndexingPolicyDefines the settings for Sitecore catalog item indexing.Name / string.Empty

IncrementalListName / string.Empty

DeletedListName / string.Empty

EntityTypeNames / List<string>()

The following table describes the relationship policies:

PolicyDescriptionProperties/Default
RelationshipPolicyDefines the available relationship in the system.Type / string.Empty

AllowedTargetTypes / Enumerable.Empty<string>()

AllowedViews / Enumerable.Empty<string>()
KnownRelationshipViewsPolicyDefines the names of the relationship definition entity views.RelationshipsDashboard / "RelatioshipDasboard"

RelationshipDefinitions / "RelationshipDefinitions"

RelationshipEntities / "RelationshipEntities"

CustomRelationship / "CustomRelationship"

AssociateEntity / "AssociateEntity"

Summary / "Summary"

Details / "Details"

Master / "Master"
KnownRelationshipListsPolicyDefines the names of the relationship definition transient and entity indexes lists.DefaultRelationshipDefinitions / "DefaultRelationshipDefinition"

CustomRelationshipDefinitions / "CustomRelationshipDefinitions"
KnownRelationshipActionsPolicyDefines the names of the relationship definitions entity view actions.AddRelationshipDefinition \ "AddRelationshipDefinition"

EditRelationshipDefinition \ "EditRelationshipDefinition"

AssociateEntity \ "AssociateEntity"

DisassociateEntity \ "DisassociateEntity"
If you have suggestions for improving this article, let us know!