14 July 2023
OrdersMessages/SubscriptionsGraphQL
We introduced the 
lineItemKey on Order Messages referencing Line Items. The lineItemKey field is now also available on Transition LineItem State and Import LineItem State update actions on Orders and Order Edits. This ensures a consistent experience when working with external identifiers across different entity types in Composable Commerce.Changes:
- [API] Added 
lineItemKeyand madelineItemIdoptional on the following update actions on Orders: - [API] Added 
lineItemKeyand madelineItemIdoptional on the following update actions on Order Edits: - [API] Added 
lineItemKeyto the following Order Messages:- LineItemStateTransition Message, OrderLineItemRemoved Message, OrderLineItemDistributionChannelSet Message, and OrderLineItemDiscountSet Message.
 
 - [GraphQL API] Changed the 
ImportStagedOrderLineItemStatetype:ImportStagedOrderLineItemState.lineItemIdinput field type changed fromString!toString- Input field 
lineItemKeywas added toImportStagedOrderLineItemStatetype 
 - [GraphQL API] Changed the 
OrderLineItemDiscountSettype:- Added the 
lineItemKeyfield to theOrderLineItemDiscountSettype. 
 - Added the 
 - [GraphQL API] Changed the 
TransitionStagedOrderLineItemStateOutputtype:- Added the 
lineItemKeyfield to theTransitionStagedOrderLineItemStateOutputtype. TransitionStagedOrderLineItemStateOutput.lineItemIdfield type changed fromString!toString
 - Added the 
 - [GraphQL API] Changed the 
TransitionStagedOrderLineItemStatetype:TransitionStagedOrderLineItemState.lineItemIdinput field type changed fromString!toString- Input field 
lineItemKeywas added toTransitionStagedOrderLineItemStatetype 
 - [GraphQL API] Changed the 
ImportStagedOrderLineItemStateOutputtype:- Added the 
lineItemKeyfield to theImportStagedOrderLineItemStateOutputtype. ImportStagedOrderLineItemStateOutput.lineItemIdfield type changed fromString!toString
 - Added the 
 - [GraphQL API] Changed the 
TransitionOrderLineItemStatetype:TransitionOrderLineItemState.lineItemIdinput field type changed fromString!toString- Input field 
lineItemKeywas added toTransitionOrderLineItemStatetype 
 - [GraphQL API] Changed the 
LineItemStateTransitiontype:- Added the 
lineItemKeyfield to theLineItemStateTransitiontype. 
 - Added the 
 - [GraphQL API] Changed the 
OrderLineItemRemovedtype:- Added the 
lineItemKeyfield to theOrderLineItemRemovedtype. 
 - Added the 
 - [GraphQL API] Changed the 
ImportOrderLineItemStatetype:ImportOrderLineItemState.lineItemIdinput field type changed fromString!toString- Input field 
lineItemKeywas added toImportOrderLineItemStatetype 
 - [GraphQL API] Changed the 
OrderLineItemDistributionChannelSettype:- Added the 
lineItemKeyfield to theOrderLineItemDistributionChannelSettype. 
 - Added the 
 
The following changes were introduced in terms of GraphQL SDL:
extend type OrderLineItemDiscountSet {
  lineItemKey: String
}
extend type TransitionStagedOrderLineItemStateOutput {
  lineItemKey: String
}
extend type OrderLineItemRemoved {
  lineItemKey: String
}
extend type ImportStagedOrderLineItemStateOutput {
  lineItemKey: String
}
extend type LineItemStateTransition {
  lineItemKey: String
}
extend type OrderLineItemDistributionChannelSet {
  lineItemKey: String
}
extend input ImportStagedOrderLineItemState {
  lineItemKey: String
}
extend input ImportOrderLineItemState {
  lineItemKey: String
}
extend input TransitionStagedOrderLineItemState {
  lineItemKey: String
}
extend input TransitionOrderLineItemState {
  lineItemKey: String
}