6 June 2023
OrdersGraphQL
We introduced the 
key field on Parcel and ParcelDraft. This ensures a consistent experience when working with external identifiers across different entity types in Composable Commerce.Changes:
- [API] Added the 
keyfield to Parcel and ParcelDraft. - [API] Added the 
parcelKeyfield and changed theparcelIdfield to be optional on the following Order and StagedOrderUpdateAction update actions: - [API] Added the 
parcelKeyfield to the Add Parcel update action on Order and StagedOrderUpdateAction. - [GraphQL API] Changed the 
Parceltype:- Added the 
keyfield to theParceltype. 
 - Added the 
 - [GraphQL API] Changed the 
ParcelDrafttype:- Input field 
keywas added toParcelDrafttype 
 - Input field 
 - [GraphQL API] Changed the 
SetStagedOrderParcelCustomTypeOutputtype:- Added the 
parcelKeyfield to theSetStagedOrderParcelCustomTypeOutputtype. SetStagedOrderParcelCustomTypeOutput.parcelIdfield type changed fromString!toString
 - Added the 
 - [GraphQL API] Changed the 
SetOrderParcelMeasurementstype:SetOrderParcelMeasurements.parcelIdinput field type changed fromString!toString- Input field 
parcelKeywas added toSetOrderParcelMeasurementstype 
 - [GraphQL API] Changed the 
SetStagedOrderParcelCustomTypetype:SetStagedOrderParcelCustomType.parcelIdinput field type changed fromString!toString- Input field 
parcelKeywas added toSetStagedOrderParcelCustomTypetype 
 - [GraphQL API] Changed the 
SetStagedOrderParcelTrackingDatatype:SetStagedOrderParcelTrackingData.parcelIdinput field type changed fromString!toString- Input field 
parcelKeywas added toSetStagedOrderParcelTrackingDatatype 
 - [GraphQL API] Changed the 
SetStagedOrderParcelCustomFieldtype:SetStagedOrderParcelCustomField.parcelIdinput field type changed fromString!toString- Input field 
parcelKeywas added toSetStagedOrderParcelCustomFieldtype 
 - [GraphQL API] Changed the 
SetStagedOrderParcelMeasurementstype:- Input field 
parcelKeywas added toSetStagedOrderParcelMeasurementstype SetStagedOrderParcelMeasurements.parcelIdinput field type changed fromString!toString
 - Input field 
 - [GraphQL API] Changed the 
AddOrderParcelToDeliverytype:- Input field 
parcelKeywas added toAddOrderParcelToDeliverytype 
 - Input field 
 - [GraphQL API] Changed the 
SetStagedOrderParcelTrackingDataOutputtype:SetStagedOrderParcelTrackingDataOutput.parcelIdfield type changed fromString!toString- Added the 
parcelKeyfield to theSetStagedOrderParcelTrackingDataOutputtype. 
 - [GraphQL API] Changed the 
SetStagedOrderParcelMeasurementsOutputtype:SetStagedOrderParcelMeasurementsOutput.parcelIdfield type changed fromString!toString- Added the 
parcelKeyfield to theSetStagedOrderParcelMeasurementsOutputtype. 
 - [GraphQL API] Changed the 
SetOrderParcelTrackingDatatype:SetOrderParcelTrackingData.parcelIdinput field type changed fromString!toString- Input field 
parcelKeywas added toSetOrderParcelTrackingDatatype 
 - [GraphQL API] Changed the 
RemoveOrderParcelFromDeliverytype:RemoveOrderParcelFromDelivery.parcelIdinput field type changed fromString!toString- Input field 
parcelKeywas added toRemoveOrderParcelFromDeliverytype 
 - [GraphQL API] Changed the 
ParcelDatatype:- Added the 
keyfield to theParcelDatatype. 
 - Added the 
 - [GraphQL API] Changed the 
AddStagedOrderParcelToDeliverytype:- Input field 
parcelKeywas added toAddStagedOrderParcelToDeliverytype 
 - Input field 
 - [GraphQL API] Changed the 
SetStagedOrderParcelItemstype:SetStagedOrderParcelItems.parcelIdinput field type changed fromString!toString- Input field 
parcelKeywas added toSetStagedOrderParcelItemstype 
 - [GraphQL API] Changed the 
SetOrderParcelCustomTypetype:SetOrderParcelCustomType.parcelIdinput field type changed fromString!toString- Input field 
parcelKeywas added toSetOrderParcelCustomTypetype 
 - [GraphQL API] Changed the 
ParcelDataDraftTypetype:- Input field 
keywas added toParcelDataDraftTypetype 
 - Input field 
 - [GraphQL API] Changed the 
SetStagedOrderParcelItemsOutputtype:SetStagedOrderParcelItemsOutput.parcelIdfield type changed fromString!toString- Added the 
parcelKeyfield to theSetStagedOrderParcelItemsOutputtype. 
 - [GraphQL API] Changed the 
RemoveStagedOrderParcelFromDeliveryOutputtype:- Added the 
parcelKeyfield to theRemoveStagedOrderParcelFromDeliveryOutputtype. RemoveStagedOrderParcelFromDeliveryOutput.parcelIdfield type changed fromString!toString
 - Added the 
 - [GraphQL API] Changed the 
SetOrderParcelItemstype:- Input field 
parcelKeywas added toSetOrderParcelItemstype SetOrderParcelItems.parcelIdinput field type changed fromString!toString
 - Input field 
 - [GraphQL API] Changed the 
SetOrderParcelCustomFieldtype:- Input field 
parcelKeywas added toSetOrderParcelCustomFieldtype SetOrderParcelCustomField.parcelIdinput field type changed fromString!toString
 - Input field 
 - [GraphQL API] Changed the 
RemoveStagedOrderParcelFromDeliverytype:RemoveStagedOrderParcelFromDelivery.parcelIdinput field type changed fromString!toString- Input field 
parcelKeywas added toRemoveStagedOrderParcelFromDeliverytype 
 - [GraphQL API] Changed the 
SetStagedOrderParcelCustomFieldOutputtype:SetStagedOrderParcelCustomFieldOutput.parcelIdfield type changed fromString!toString- Added the 
parcelKeyfield to theSetStagedOrderParcelCustomFieldOutputtype. 
 - [GraphQL API] Changed the 
AddStagedOrderParcelToDeliveryOutputtype:- Added the 
parcelKeyfield to theAddStagedOrderParcelToDeliveryOutputtype. 
 - Added the 
 
The following changes were introduced in terms of GraphQL SDL:
extend type SetStagedOrderParcelCustomTypeOutput {
  parcelKey: String
}
extend type Parcel {
  key: String
}
extend type SetStagedOrderParcelMeasurementsOutput {
  parcelKey: String
}
extend type ParcelData {
  key: String
}
extend type SetStagedOrderParcelTrackingDataOutput {
  parcelKey: String
}
extend type SetStagedOrderParcelCustomFieldOutput {
  parcelKey: String
}
extend type AddStagedOrderParcelToDeliveryOutput {
  parcelKey: String
}
extend type SetStagedOrderParcelItemsOutput {
  parcelKey: String
}
extend type RemoveStagedOrderParcelFromDeliveryOutput {
  parcelKey: String
}
extend input SetOrderParcelMeasurements {
  parcelKey: String
}
extend input SetOrderParcelTrackingData {
  parcelKey: String
}
extend input ParcelDraft {
  key: String
}
extend input RemoveOrderParcelFromDelivery {
  parcelKey: String
}
extend input SetStagedOrderParcelCustomType {
  parcelKey: String
}
extend input AddStagedOrderParcelToDelivery {
  parcelKey: String
}
extend input SetStagedOrderParcelTrackingData {
  parcelKey: String
}
extend input SetStagedOrderParcelCustomField {
  parcelKey: String
}
extend input SetStagedOrderParcelMeasurements {
  parcelKey: String
}
extend input AddOrderParcelToDelivery {
  parcelKey: String
}
extend input SetStagedOrderParcelItems {
  parcelKey: String
}
extend input SetOrderParcelCustomType {
  parcelKey: String
}
extend input ParcelDataDraftType {
  key: String
}
extend input SetOrderParcelItems {
  parcelKey: String
}
extend input SetOrderParcelCustomField {
  parcelKey: String
}
extend input RemoveStagedOrderParcelFromDelivery {
  parcelKey: String
}