Item
Any item upon which there is a need to retrieve pre-defined information and that may be priced, or ordered, or invoiced at any point in any supply chain. The item entity is the main entity for rapidly changing master data and is the base for most retail operations. A item can be of several types where a normal StockItem is the most common. Other types of items can be used to represent bundles of items, model definitions to related items of different sizes, colors, styles and fragrances.
type Item {
globalUniqueId: String
id: String
correlationId: String
tenantId: String
name: String
description: String
businessUnitId: String @deprecated
businessUnitIds: [String]
businessUnitGroupId: String
businessUnitHierarchyLevel: Int
version: Int!
revision: Long!
created: DateTime!
createdBy: String
modified: DateTime!
modifiedBy: String
unitOfMeasure: String @deprecated
referencePriceConversionFactor: Float!
referencePriceUnitOfMeasurement: UnitOfMeasure!
salesUnitOfMeasurement: UnitOfMeasure!
needsManualSending: Boolean!
needsApproval: Boolean!
needsLabelPrinting: Boolean!
availableInPos: Boolean!
assortmentTo: DateTime
assortmentFrom: DateTime
assortmentTags: [String]
assortmentPolicyType: AssortmentType!
depositRuleId: String @deprecated
additionalItemIds: [String] @deprecated
brand: String
imageUrls: [String] @deprecated
itemCategoryId: String
tags: [String]
status: ItemStatus!
type: ItemType!
netContent: Decimal
additionalProperties: [AdditionalProperty]
images: [ItemImage]
depositAndFeeRuleIds: [String]
parentId: String
conditionIds: [String]
priceSpecifications(
currentOnly: Boolean
type: PriceType
): [PriceSpecification]
itemIdentifiers(
primaryOnly: Boolean
type: ItemIdentifierType
): [ItemIdentifier]
promotions(
activeOnly: Boolean
): [Promotion]
contentDeclarations: [ContentDeclaration]
itemLinks(
itemLinkTypes: [ItemLinkType!]
): [ItemLink]
parentItem: Item
}
Fields
Item.globalUniqueId ● String scalar
Internal unique ID for CRUD operations and relations. A typical example is: TenantId_itemId_BusinessUnitGroupId
Item.id ● String scalar
Id for the entity. Either external or internal
Item.correlationId ● String scalar
ID for tracing an entity and/or a group of sub entities through the application. Might be external, and if missing from the producer of data the API will add an ID. Must be used in all logging and tracing.
Item.tenantId ● String scalar
To support multi tenancy we need to be able to identify the customer that owns this information.
Item.name ● String scalar
The name of the entity. This general property can replace the previous ArticleName, StoreName, CampaignName, etc.
Item.description ● String scalar
The description of the entity.
Item.businessUnitId ● String deprecated scalar
BusinessUnitId is obsolete. Use BusinessUnitIds property instead.
Used to assign the entity to tenant's specific business unit.
Item.businessUnitIds ● [String] list scalar
The business units associated with the entity.
Item.businessUnitGroupId ● String scalar
Used to assign the entity to a specific level in a business unit group hierarchy specific to the tenant.
Item.businessUnitHierarchyLevel ● Int scalar
Indicates on which level in the business unit group hierarchy the entity is defined. The property is used for prioritizing which definition to use, if several exists. The higher the number the higher the priority should be considered.
Item.version ● Int! non-null scalar
Version of the entity. Must be updated when there is a change to the entity. An ever increasing Integer.
Use revision instead of version if you need a more precise versioning mechanism.
Item.revision ● Long! non-null scalar
Contains evergrowing number used to validate the version of an entity.
Item.created ● DateTime! non-null scalar
When the object was first created. This timestamp will be set by the input API POST-endpoints before creating the AVRO data for processing.
Item.createdBy ● String scalar
Who created. Will be an ID and must be looked up in the user DB. This ID will be set by the input API POST-endpoints before creating the AVRO data for processing.
Item.modified ● DateTime! non-null scalar
When the object was modified. Will be updated along with the Version property. This timestamp will be set by the input API PUT and PATCH-endpoints before creating the AVRO data for processing.
Item.modifiedBy ● String scalar
Who created or modified the object. Will be an ID and must be looked up in the user DB. This ID will be set by the input API PUT and PATCH-endpoints before creating the AVRO data for processing.
Item.unitOfMeasure ● String deprecated scalar
UnitOfMeasure will be removed on 01 Jan 2023. Use SalesUnitOfMeasurement instead.