All Release Notes
Added Messages GraphQL Query Schema
21 October 2020
Enhancement
GraphQLMessages
Messages can now be queried using the GraphQL API.
- [GraphQL API] Added the following types to the GraphQL schema:
CategoryCreated,CategorySlugChanged,CustomLineItemStateTransition,CustomerAddressAdded,CustomerAddressChanged,CustomerAddressRemoved,CustomerCompanyNameSet,CustomerCreated,CustomerDateOfBirthSet,CustomerEmailChanged,CustomerEmailVerified,CustomerGroupSet,CustomerPasswordUpdated,DeliveryAdded,DeliveryAddressSet,DeliveryItemsUpdated,DeliveryRemoved,DummyLocalizedString,InventoryEntryCreated,InventoryEntryCreatedContent,InventoryEntryDeleted,InventoryEntryQuantitySet,LineItemStateTransition,Message,MessageId,MessagePayload,MessageQueryResult,OrderBillingAddressSet,OrderCreated,OrderCustomLineItemAdded,OrderCustomLineItemDiscountSet,OrderCustomLineItemQuantityChanged,OrderCustomLineItemRemoved,OrderCustomerEmailSet,OrderCustomerGroupSet,OrderCustomerSet,OrderDeleted,OrderDiscountCodeAdded,OrderDiscountCodeRemoved,OrderDiscountCodeStateSet,OrderEditApplied,OrderImported,OrderLineItemAdded,OrderLineItemDiscountSet,OrderLineItemDistributionChannelSet,OrderLineItemRemoved,OrderPaymentStateChanged,OrderReturnShipmentStateChanged,OrderShipmentStateChanged,OrderShippingAddressSet,OrderShippingInfoSet,OrderShippingRateInputSet,OrderStateChanged,OrderStateTransition,OrderStoreSet,ParcelAddedToDelivery,ParcelItemsUpdated,ParcelMeasurementsUpdated,ParcelRemovedFromDelivery,ParcelTrackingDataUpdated,PaymentCreated,PaymentInteractionAdded,PaymentStatusInterfaceCodeSet,PaymentStatusStateTransition,PaymentTransactionAdded,PaymentTransactionStateChanged,ProductAddedToCategory,ProductCreated,ProductDeleted,ProductImageAdded,ProductPriceDiscountUpdateMessagePayload,ProductPriceDiscountsSet,ProductPriceExternalDiscountSet,ProductProjectionMessagePayload,ProductPublished,ProductRemovedFromCategory,ProductRevertedStagedChanges,ProductSlugChanged,ProductStateTransition,ProductUnpublished,ProductVariantAdded,ProductVariantDeleted,ReferenceId,ReturnInfoAdded,ReviewCreated,ReviewRatingSet,ReviewStateTransition,UserProvidedIdentifiers. - [GraphQL API] Changed the
Querytype:- Added the
messagefield to theQuerytype. - Added the
messagesfield to theQuerytype.
- Added the
The following changes were introduced in terms of GraphQL SDL:
extend type Query {message("Queries with specified ID"id: String,"Queries with specified key"key: String): Messagemessages(where: String, sort: [String!], limit: Int, offset: Int): MessageQueryResult!}type CategoryCreated implements MessagePayload {category: Category!type: String!}type CategorySlugChanged implements MessagePayload {slug("String is defined for different locales. This argument specifies the desired locale."locale: Locale,"List of languages the client is able to understand, and which locale variant is preferred."acceptLanguage: [Locale!]): StringslugAllLocales: [LocalizedString!]!type: String!}type CustomLineItemStateTransition implements MessagePayload {customLineItemId: String!transitionDate: DateTime!quantity: Long!fromState: StatetoState: StatefromStateRef: Reference!toStateRef: Reference!type: String!}type CustomerAddressAdded implements MessagePayload {address: Address!type: String!}type CustomerAddressChanged implements MessagePayload {address: Address!type: String!}type CustomerAddressRemoved implements MessagePayload {address: Address!type: String!}type CustomerCompanyNameSet implements MessagePayload {companyName: Stringtype: String!}type CustomerCreated implements MessagePayload {customer: Customer!type: String!}type CustomerDateOfBirthSet implements MessagePayload {dateOfBirth: Datetype: String!}type CustomerEmailChanged implements MessagePayload {email: String!type: String!}type CustomerEmailVerified implements MessagePayload {type: String!}type CustomerGroupSet implements MessagePayload {customerGroup: CustomerGroupcustomerGroupRef: Referencetype: String!}type CustomerPasswordUpdated implements MessagePayload {reset: Boolean!type: String!}type DeliveryAdded implements MessagePayload {delivery: Delivery!type: String!}type DeliveryAddressSet implements MessagePayload {deliveryId: String!address: AddressoldAddress: Addresstype: String!}type DeliveryItemsUpdated implements MessagePayload {deliveryId: String!items: [DeliveryItem!]!oldItems: [DeliveryItem!]!type: String!}type DeliveryRemoved implements MessagePayload {delivery: Delivery!type: String!}interface DummyLocalizedString {dummy: String!}type InventoryEntryCreated implements MessagePayload {inventoryEntry: InventoryEntryCreatedContent!type: String!}type InventoryEntryCreatedContent {inventoryEntryId: String!sku: String!quantityOnStock: Long!restockableInDays: IntexpectedDelivery: DateTimemessageId: MessageIdsupplyChannel: ChannelsupplyChannelRef: Referencecustom: CustomFieldsType}type InventoryEntryDeleted implements MessagePayload {sku: String!supplyChannel: ChannelsupplyChannelRef: Referencetype: String!}type InventoryEntryQuantitySet implements MessagePayload {oldQuantityOnStock: Long!newQuantityOnStock: Long!oldAvailableQuantity: Long!newAvailableQuantity: Long!type: String!}type LineItemStateTransition implements MessagePayload {lineItemId: String!transitionDate: DateTime!quantity: Long!fromState: StatetoState: StatefromStateRef: Reference!toStateRef: Reference!type: String!}type Message implements Versioned {id: String!type: String!sequenceNumber: Long!resourceRef: Reference!resourceVersion: Long!userProvidedIdentifiers: UserProvidedIdentifierspayload: MessagePayload!version: Long!createdAt: DateTime!lastModifiedAt: DateTime!createdBy: InitiatorlastModifiedBy: Initiator}type MessageId {id: String!sequenceNumber: Long!}interface MessagePayload {type: String!}type MessageQueryResult {offset: Int!count: Int!total: Long!results: [Message!]!}type OrderBillingAddressSet implements MessagePayload {address: AddressoldAddress: Addresstype: String!}type OrderCreated implements MessagePayload {order: Order!type: String!}type OrderCustomLineItemAdded implements MessagePayload {customLineItem: CustomLineItem!type: String!}type OrderCustomLineItemDiscountSet implements MessagePayload {customLineItemId: String!discountedPricePerQuantity: [DiscountedLineItemPriceForQuantity!]!taxedPrice: TaxedItemPricetype: String!}type OrderCustomLineItemQuantityChanged implements MessagePayload {customLineItemId: String!quantity: Long!oldQuantity: Longtype: String!}type OrderCustomLineItemRemoved implements MessagePayload {customLineItemId: String!customLineItem: CustomLineItemtype: String!}type OrderCustomerEmailSet implements MessagePayload {email: StringoldEmail: Stringtype: String!}type OrderCustomerGroupSet implements MessagePayload {customerGroup: CustomerGroupoldCustomerGroup: CustomerGroupcustomerGroupRef: ReferenceoldCustomerGroupRef: Referencetype: String!}type OrderCustomerSet implements MessagePayload {customer: CustomeroldCustomer: CustomercustomerGroup: CustomerGroupoldCustomerGroup: CustomerGroupcustomerRef: ReferenceoldCustomerRef: ReferencecustomerGroupRef: ReferenceoldCustomerGroupRef: Referencetype: String!}type OrderDeleted implements MessagePayload {order: Ordertype: String!}type OrderDiscountCodeAdded implements MessagePayload {discountCode: DiscountCodediscountCodeRef: Reference!type: String!}type OrderDiscountCodeRemoved implements MessagePayload {discountCode: DiscountCodediscountCodeRef: Reference!type: String!}type OrderDiscountCodeStateSet implements MessagePayload {state: DiscountCodeState!oldState: DiscountCodeStatediscountCode: DiscountCodediscountCodeRef: Reference!type: String!}type OrderEditApplied implements MessagePayload {result: Applied!edit: OrderEditeditRef: Reference!type: String!}type OrderImported implements MessagePayload {order: Order!type: String!}type OrderLineItemAdded implements MessagePayload {lineItem: LineItem!addedQuantity: Long!type: String!}type OrderLineItemDiscountSet implements MessagePayload {lineItemId: String!discountedPricePerQuantity: [DiscountedLineItemPriceForQuantity!]!totalPrice: Money!taxedPrice: TaxedItemPricetype: String!}type OrderLineItemDistributionChannelSet implements MessagePayload {lineItemId: String!distributionChannel: ChanneldistributionChannelRef: Referencetype: String!}type OrderLineItemRemoved implements MessagePayload {lineItemId: String!removedQuantity: Long!newQuantity: Long!newState: Set!newTotalPrice: Money!newTaxedPrice: TaxedItemPricenewPrice: ProductPricenewShippingDetails: ItemShippingDetailstype: String!}type OrderPaymentStateChanged implements MessagePayload {paymentState: PaymentState!oldPaymentState: PaymentStatetype: String!}type OrderReturnShipmentStateChanged implements MessagePayload {returnItemId: String!returnShipmentState: ReturnShipmentState!type: String!}type OrderShipmentStateChanged implements MessagePayload {shipmentState: ShipmentState!oldShipmentState: ShipmentStatetype: String!}type OrderShippingAddressSet implements MessagePayload {address: AddressoldAddress: Addresstype: String!}type OrderShippingInfoSet implements MessagePayload {shippingInfo: ShippingInfooldShippingInfo: ShippingInfotype: String!}type OrderShippingRateInputSet implements MessagePayload {shippingRateInput: ShippingRateInputoldShippingRateInput: ShippingRateInputtype: String!}type OrderStateChanged implements MessagePayload {orderId: String!orderState: OrderState!oldOrderState: OrderStatetype: String!}type OrderStateTransition implements MessagePayload {force: Boolean!state: StateoldState: StatestateRef: Reference!oldStateRef: Referencetype: String!}type OrderStoreSet implements MessagePayload {store: StoreoldStore: StorestoreRef: KeyReferenceoldStoreRef: KeyReferencetype: String!}type ParcelAddedToDelivery implements MessagePayload {delivery: Delivery!parcel: Parcel!type: String!}type ParcelItemsUpdated implements MessagePayload {deliveryId: String!parcelId: String!items: [DeliveryItem!]!oldItems: [DeliveryItem!]!type: String!}type ParcelMeasurementsUpdated implements MessagePayload {deliveryId: String!parcelId: String!measurements: ParcelMeasurementstype: String!}type ParcelRemovedFromDelivery implements MessagePayload {deliveryId: String!parcel: Parcel!type: String!}type ParcelTrackingDataUpdated implements MessagePayload {deliveryId: String!parcelId: String!trackingData: TrackingDatatype: String!}type PaymentCreated implements MessagePayload {payment: Payment!type: String!}type PaymentInteractionAdded implements MessagePayload {interaction: CustomFieldsType!type: String!}type PaymentStatusInterfaceCodeSet implements MessagePayload {paymentId: String!interfaceCode: Stringtype: String!}type PaymentStatusStateTransition implements MessagePayload {force: Boolean!state: StatestateRef: Referencetype: String!}type PaymentTransactionAdded implements MessagePayload {transaction: Transaction!type: String!}type PaymentTransactionStateChanged implements MessagePayload {transactionId: String!state: TransactionState!type: String!}type ProductAddedToCategory implements MessagePayload {category: ReferenceId!staged: Boolean!type: String!}type ProductCreated implements MessagePayload {productProjection: ProductProjectionMessagePayload!type: String!}type ProductDeleted implements MessagePayload {removedImageUrls: Set!currentProjection: ProductProjectionMessagePayloadtype: String!}type ProductImageAdded implements MessagePayload {variantId: Int!image: Image!staged: Boolean!type: String!}type ProductPriceDiscountUpdateMessagePayload {variantId: Int!variantKey: Stringsku: StringpriceId: String!discounted: DiscountedProductPriceValuestaged: Boolean!}type ProductPriceDiscountsSet implements MessagePayload {updatedPrices: [ProductPriceDiscountUpdateMessagePayload!]!type: String!}type ProductPriceExternalDiscountSet implements MessagePayload {variantId: Int!variantKey: Stringsku: StringpriceId: String!discounted: DiscountedProductPriceValuestaged: Boolean!type: String!}type ProductProjectionMessagePayload {id: String!version: Long!createdAt: DateTime!lastModifiedAt: DateTime!productTypeRef: Reference!productType: ProductTypeDefinitionname("String is defined for different locales. This argument specifies the desired locale."locale: Locale,"List of languages the client is able to understand, and which locale variant is preferred."acceptLanguage: [Locale!]): StringnameAllLocales: [LocalizedString!]!description("String is defined for different locales. This argument specifies the desired locale."locale: Locale,"List of languages the client is able to understand, and which locale variant is preferred."acceptLanguage: [Locale!]): StringdescriptionAllLocales: [LocalizedString!]slug("String is defined for different locales. This argument specifies the desired locale."locale: Locale,"List of languages the client is able to understand, and which locale variant is preferred."acceptLanguage: [Locale!]): StringslugAllLocales: [LocalizedString!]!categoryOrderHints: [CategoryOrderHint!]!categoriesRef: [Reference!]!categories: [Category!]!searchKeywords: [SearchKeywords!]!metaTitle("String is defined for different locales. This argument specifies the desired locale."locale: Locale,"List of languages the client is able to understand, and which locale variant is preferred."acceptLanguage: [Locale!]): StringmetaTitleAllLocales: [LocalizedString!]metaKeywords("String is defined for different locales. This argument specifies the desired locale."locale: Locale,"List of languages the client is able to understand, and which locale variant is preferred."acceptLanguage: [Locale!]): StringmetaKeywordsAllLocales: [LocalizedString!]metaDescription("String is defined for different locales. This argument specifies the desired locale."locale: Locale,"List of languages the client is able to understand, and which locale variant is preferred."acceptLanguage: [Locale!]): StringmetaDescriptionAllLocales: [LocalizedString!]hasStagedChanges: Boolean!published: Boolean!masterData: ProductVariant!variants: [ProductVariant!]!taxCategoryRef: ReferencetaxCategory: TaxCategorystateRef: Referencestate: StatereviewRatingStatistics: ReviewRatingStatistics}type ProductPublished implements MessagePayload {productProjection: ProductProjectionMessagePayload!removedImageUrls: [String!]!scope: PublishScope!type: String!}type ProductRemovedFromCategory implements MessagePayload {category: ReferenceId!staged: Boolean!type: String!}type ProductRevertedStagedChanges implements MessagePayload {removedImageUrls: Set!type: String!}type ProductSlugChanged implements MessagePayload {slug: DummyLocalizedString!type: String!}type ProductStateTransition implements MessagePayload {force: Boolean!state: StatestateRef: Reference!type: String!}type ProductUnpublished implements MessagePayload {type: String!}type ProductVariantAdded implements MessagePayload {variant: ProductVariant!staged: Boolean!type: String!}type ProductVariantDeleted implements MessagePayload {removedImageUrls: Set!variant: ProductVarianttype: String!}type ReferenceId {typeId: String!id: String!}type ReturnInfoAdded implements MessagePayload {returnInfo: ReturnInfo!type: String!}type ReviewCreated implements MessagePayload {review: Review!type: String!}type ReviewRatingSet implements MessagePayload {oldRating: IntnewRating: IntincludedInStatistics: Boolean!target: ReviewTargettargetRef: Referencetype: String!}type ReviewStateTransition implements MessagePayload {oldIncludedInStatistics: Boolean!newIncludedInStatistics: Boolean!force: Boolean!target: ReviewTargetoldState: StatenewState: StatetargetRef: ReferenceoldStateRef: ReferencenewStateRef: Reference!type: String!}type UserProvidedIdentifiers {key: StringorderNumber: StringcustomerNumber: StringexternalId: Stringsku: Stringslug("String is defined for different locales. This argument specifies the desired locale."locale: Locale,"List of languages the client is able to understand, and which locale variant is preferred."acceptLanguage: [Locale!]): StringslugAllLocales: [LocalizedString!]}