All Release Notes

Added GraphQL support for Messages on QuoteRequests, StagedQuotes, and Quotes

24 August 2023
Composable Commerce
HTTP API
Enhancement
GraphQLB2BQuotesMessages/Subscriptions

You can now query QuoteRequest, StagedQuote, and Quote Messages via GraphQL.

In addition, you can now subscribe to Messages about Quote renegotiation requests.

Changes:

  • [API] added QuoteRenegotiationRequested Message.
  • [GraphQL API] Added the following types to the GraphQL schema: QuoteCreated, QuoteCustomerChanged, QuoteDeleted, QuoteRenegotiationRequested, QuoteRequestCreated, QuoteRequestCustomerChanged, QuoteRequestDeleted, QuoteRequestStateChanged, QuoteRequestStateTransition, QuoteStateChanged, QuoteStateTransition, StagedQuoteCreated, StagedQuoteDeleted, StagedQuoteSellerCommentSet, StagedQuoteStateChanged, StagedQuoteStateTransition, StagedQuoteValidToSet.
  • [GraphQL API] Changed the Quote type:
    • Added the customerGroup field to the Quote type.
    • Added the customerGroupRef field to the Quote type.
  • [GraphQL API] Changed the QuoteRequest type:
    • Added the customerGroup field to the QuoteRequest type.
    • Added the customerGroupRef field to the QuoteRequest type.

The following changes were introduced in terms of GraphQL SDL:

extend type Quote {
customerGroup: CustomerGroup
customerGroupRef: Reference
}
extend type QuoteRequest {
customerGroup: CustomerGroup
customerGroupRef: Reference
}
type QuoteCreated implements MessagePayload {
quote: Quote!
type: String!
}
type QuoteCustomerChanged implements MessagePayload {
customerRef: Reference!
previousCustomerRef: Reference!
customer: Customer
previousCustomer: Customer
type: String!
}
type QuoteDeleted implements MessagePayload {
type: String!
}
type QuoteRenegotiationRequested implements MessagePayload {
buyerComment: String
type: String!
}
type QuoteRequestCreated implements MessagePayload {
quoteRequest: QuoteRequest!
type: String!
}
type QuoteRequestCustomerChanged implements MessagePayload {
customerRef: Reference!
previousCustomerRef: Reference!
customer: Customer
previousCustomer: Customer
type: String!
}
type QuoteRequestDeleted implements MessagePayload {
type: String!
}
type QuoteRequestStateChanged implements MessagePayload {
quoteRequestState: QuoteRequestState!
oldQuoteRequestState: QuoteRequestState!
type: String!
}
type QuoteRequestStateTransition implements MessagePayload {
stateRef: Reference!
oldStateRef: Reference
force: Boolean!
state: State
oldState: State
type: String!
}
type QuoteStateChanged implements MessagePayload {
quoteState: QuoteState!
oldQuoteState: QuoteState!
type: String!
}
type QuoteStateTransition implements MessagePayload {
stateRef: Reference!
oldStateRef: Reference
force: Boolean!
state: State
oldState: State
type: String!
}
type StagedQuoteCreated implements MessagePayload {
stagedQuote: StagedQuote!
type: String!
}
type StagedQuoteDeleted implements MessagePayload {
type: String!
}
type StagedQuoteSellerCommentSet implements MessagePayload {
sellerComment: String
type: String!
}
type StagedQuoteStateChanged implements MessagePayload {
stagedQuoteState: StagedQuoteState!
oldStagedQuoteState: StagedQuoteState!
type: String!
}
type StagedQuoteStateTransition implements MessagePayload {
stateRef: Reference!
oldStateRef: Reference
force: Boolean!
state: State
oldState: State
type: String!
}
type StagedQuoteValidToSet implements MessagePayload {
validTo: DateTime
type: String!
}