21 July 2023
GraphQLOrdersMessages/Subscriptions
We introduced the 
customLineItemKey on Order Messages referencing Custom Line Items. The customLineItemKey field is now also available on Transition LineItem State and Import LineItem State update actions on Orders and Order Edits. In addition, we introduced the key field on CustomLineItemImportDraft and LineItemImportDraft. This ensures a consistent experience when working with external identifiers across different entity types in Composable Commerce.Changes:
- [API] Added 
customLineItemKeyto the following Order Messages:- CustomLineItemStateTransition Message, OrderCustomLineItemDiscountSet Message, OrderCustomLineItemQuantityChanged Message, and OrderCustomLineItemRemoved Message.
 
 - [API] Added 
keyto the following Order Import types: - [API] Added 
customLineItemKeyand madecustomerLineItemIdoptional on the following update actions on Orders: - [API] Added 
customLineItemKeyand madecustomerLineItemIdoptional on the following update actions on Order Edits: - [GraphQL API] Changed the 
TransitionStagedOrderCustomLineItemStateOutputtype:TransitionStagedOrderCustomLineItemStateOutput.customLineItemIdfield type changed fromString!toString
- Added the 
customLineItemKeyfield to theTransitionStagedOrderCustomLineItemStateOutputtype. 
 - [GraphQL API] Changed the 
OrderCustomLineItemQuantityChangedtype:- Added the 
customLineItemKeyfield to theOrderCustomLineItemQuantityChangedtype. 
 - Added the 
 - [GraphQL API] Changed the 
OrderCustomLineItemRemovedtype:- Added the 
customLineItemKeyfield to theOrderCustomLineItemRemovedtype. 
 - Added the 
 - [GraphQL API] Changed the 
CustomLineItemStateTransitiontype:- Added the 
customLineItemKeyfield to theCustomLineItemStateTransitiontype. 
 - Added the 
 - [GraphQL API] Changed the 
ImportStagedOrderCustomLineItemStateOutputtype:ImportStagedOrderCustomLineItemStateOutput.customLineItemIdfield type changed fromString!toString- Added the 
customLineItemKeyfield to theImportStagedOrderCustomLineItemStateOutputtype. 
 - [GraphQL API] Changed the 
ImportOrderCustomLineItemStatetype:ImportOrderCustomLineItemState.customLineItemIdinput field type changed fromString!toString- Input field 
customLineItemKeywas added toImportOrderCustomLineItemStatetype 
 - [GraphQL API] Changed the 
ImportStagedOrderCustomLineItemStatetype:ImportStagedOrderCustomLineItemState.customLineItemIdinput field type changed fromString!toString- Input field 
customLineItemKeywas added toImportStagedOrderCustomLineItemStatetype 
 - [GraphQL API] Changed the 
TransitionOrderCustomLineItemStatetype:- Input field 
customLineItemKeywas added toTransitionOrderCustomLineItemStatetype TransitionOrderCustomLineItemState.customLineItemIdinput field type changed fromString!toString
 - Input field 
 - [GraphQL API] Changed the 
TransitionStagedOrderCustomLineItemStatetype:- Input field 
customLineItemKeywas added toTransitionStagedOrderCustomLineItemStatetype TransitionStagedOrderCustomLineItemState.customLineItemIdinput field type changed fromString!toString
 - Input field 
 - [GraphQL API] Changed the 
OrderCustomLineItemDiscountSettype:- Added the 
customLineItemKeyfield to theOrderCustomLineItemDiscountSettype. 
 - Added the 
 - [GraphQL API] Changed the 
LineItemImportDrafttype:- Input field 
keywas added toLineItemImportDrafttype 
 - Input field 
 - [GraphQL API] Changed the 
CustomLineItemImportDrafttype:- Input field 
keywas added toCustomLineItemImportDrafttype 
 - Input field 
 
The following changes were introduced in terms of GraphQL SDL:
extend type TransitionStagedOrderCustomLineItemStateOutput {
  customLineItemKey: String
}
extend type OrderCustomLineItemQuantityChanged {
  customLineItemKey: String
}
extend type OrderCustomLineItemDiscountSet {
  customLineItemKey: String
}
extend type OrderCustomLineItemRemoved {
  customLineItemKey: String
}
extend type CustomLineItemStateTransition {
  customLineItemKey: String
}
extend type ImportStagedOrderCustomLineItemStateOutput {
  customLineItemKey: String
}
extend input TransitionOrderCustomLineItemState {
  customLineItemKey: String
}
extend input TransitionStagedOrderCustomLineItemState {
  customLineItemKey: String
}
extend input ImportOrderCustomLineItemState {
  customLineItemKey: String
}
extend input ImportStagedOrderCustomLineItemState {
  customLineItemKey: String
}
extend input LineItemImportDraft {
  key: String
}
extend input CustomLineItemImportDraft {
  key: String
}