"""Returned when attempting to set the Customer for an Order when already logged in."""
type AlreadyLoggedInError {
errorCode: ErrorCode!
message: String!
}
type Channel {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
code: String!
token: String!
defaultTaxZone: Zone
defaultShippingZone: Zone
defaultLanguageCode: LanguageCode!
availableLanguageCodes: [LanguageCode!]
currencyCode: CurrencyCode!
defaultCurrencyCode: CurrencyCode!
availableCurrencyCodes: [CurrencyCode!]!
"""Not yet used - will be implemented in a future release."""
trackInventory: Boolean
"""Not yet used - will be implemented in a future release."""
outOfStockThreshold: Int
pricesIncludeTax: Boolean!
seller: Seller
customFields: JSON
}
type CollectionBreadcrumb {
id: ID!
name: String!
slug: String!
}
CollectionList
typeCollectionList
type CollectionList {
items: [Collection!]!
totalItems: Int!
}
CollectionResult
typeCollectionResult
"""
Which Collections are present in the products returned
by the search, and in what quantity.
"""
type CollectionResult {
collection: Collection!
count: Int!
}
"""
A Country of the world which your shop operates in.
The `code` field is typically a 2-character ISO code such as "GB", "US", "DE" etc. This code is used in certain inputs such as
`UpdateAddressInput` and `CreateAddressInput` to specify the country.
"""
type Country {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
code: String!
type: String!
name: String!
enabled: Boolean!
parent: Region
parentId: ID
translations: [RegionTranslation!]!
customFields: JSON
}
CountryList
typeCountryList
type CountryList {
items: [Country!]!
totalItems: Int!
}
CouponCodeExpiredError
typeCouponCodeExpiredError
"""Returned if the provided coupon code is invalid"""
type CouponCodeExpiredError {
errorCode: ErrorCode!
message: String!
couponCode: String!
}
CouponCodeInvalidError
typeCouponCodeInvalidError
"""Returned if the provided coupon code is invalid"""
type CouponCodeInvalidError {
errorCode: ErrorCode!
message: String!
couponCode: String!
}
CouponCodeLimitError
typeCouponCodeLimitError
"""Returned if the provided coupon code is invalid"""
type CouponCodeLimitError {
errorCode: ErrorCode!
message: String!
couponCode: String!
limit: Int!
}
CouponRemovedDuringCheckoutError
typeCouponRemovedDuringCheckoutError
"""
Returned by `addPaymentToOrder` when one or more coupon codes were removed
from the Order during payment-time revalidation and the removal would have
increased the amount the customer is charged. Refusing the payment in this
case prevents silently charging the customer more than they agreed to. The
most common trigger is a usage-limited coupon's slot being claimed by a
concurrent checkout, but the same protection applies when a coupon is
stripped because the order no longer meets the promotion's eligibility
conditions or because the promotion was disabled mid-checkout.
"""
type CouponRemovedDuringCheckoutError {
errorCode: ErrorCode!
message: String!
removedCouponCodes: [String!]!
previousTotalWithTax: Money!
newTotalWithTax: Money!
currencyCode: CurrencyCode!
}
type CustomerList {
items: [Customer!]!
totalItems: Int!
}
DateTime
scalarDateTime
scalar DateTime
DateTimeCustomFieldConfig
typeDateTimeCustomFieldConfig
"""
Expects the same validation formats as the `<input type="datetime-local">` HTML element.
See https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/datetime-local#Additional_attributes
"""
type DateTimeCustomFieldConfig {
name: String!
type: String!
list: Boolean!
label: [LocalizedString!]
description: [LocalizedString!]
readonly: Boolean
internal: Boolean
nullable: Boolean
requiresPermission: [Permission!]
deprecated: Boolean
deprecationReason: String
min: String
max: String
step: Int
ui: JSON
}
DateTimeStructFieldConfig
typeDateTimeStructFieldConfig
"""
Expects the same validation formats as the `<input type="datetime-local">` HTML element.
See https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/datetime-local#Additional_attributes
"""
type DateTimeStructFieldConfig {
name: String!
type: String!
list: Boolean!
label: [LocalizedString!]
description: [LocalizedString!]
min: String
max: String
step: Int
ui: JSON
}
"""Returned when attempting to create a Customer with an email address already registered to an existing User."""
type EmailAddressConflictError {
errorCode: ErrorCode!
message: String!
}
type FacetValueList {
items: [FacetValue!]!
totalItems: Int!
}
FacetValueResult
typeFacetValueResult
"""
Which FacetValues are present in the products returned
by the search, and in what quantity.
"""
type FacetValueResult {
facetValue: FacetValue!
count: Int!
}
"""The `Float` scalar type represents signed double-precision fractional values as specified by [IEEE 754](https://en.wikipedia.org/wiki/IEEE_floating_point)."""
scalar Float
"""Returned when attempting to set the Customer on a guest checkout when the configured GuestCheckoutStrategy does not allow it."""
type GuestCheckoutError {
errorCode: ErrorCode!
message: String!
errorDetail: String!
}
type HistoryEntryList {
items: [HistoryEntry!]!
totalItems: Int!
}
ID
scalarID
"""The `ID` scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `"4"`) or integer (such as `4`) input value will be accepted as an ID."""
scalar ID
IdentifierChangeTokenExpiredError
typeIdentifierChangeTokenExpiredError
"""
Returned if the token used to change a Customer's email address is valid, but has
expired according to the `verificationTokenDuration` setting in the AuthOptions.
"""
type IdentifierChangeTokenExpiredError {
errorCode: ErrorCode!
message: String!
}
IdentifierChangeTokenInvalidError
typeIdentifierChangeTokenInvalidError
"""
Returned if the token used to change a Customer's email address is either
invalid or does not match any expected tokens.
"""
type IdentifierChangeTokenInvalidError {
errorCode: ErrorCode!
message: String!
}
IneligiblePaymentMethodError
typeIneligiblePaymentMethodError
"""Returned when attempting to add a Payment using a PaymentMethod for which the Order is not eligible."""
type IneligiblePaymentMethodError {
errorCode: ErrorCode!
message: String!
eligibilityCheckerMessage: String
}
IneligibleShippingMethodError
typeIneligibleShippingMethodError
"""Returned when attempting to set a ShippingMethod for which the Order is not eligible"""
type IneligibleShippingMethodError {
errorCode: ErrorCode!
message: String!
}
InsufficientStockError
typeInsufficientStockError
"""Returned when attempting to add more items to the Order than are available"""
type InsufficientStockError {
errorCode: ErrorCode!
message: String!
quantityAvailable: Int!
order: Order!
}
Int
scalarInt
"""The `Int` scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1."""
scalar Int
IntCustomFieldConfig
typeIntCustomFieldConfig
type IntCustomFieldConfig {
name: String!
type: String!
list: Boolean!
label: [LocalizedString!]
description: [LocalizedString!]
readonly: Boolean
internal: Boolean
nullable: Boolean
requiresPermission: [Permission!]
deprecated: Boolean
deprecationReason: String
min: Int
max: Int
step: Int
ui: JSON
}
IntStructFieldConfig
typeIntStructFieldConfig
type IntStructFieldConfig {
name: String!
type: String!
list: Boolean!
label: [LocalizedString!]
description: [LocalizedString!]
min: Int
max: Int
step: Int
ui: JSON
}
InvalidCredentialsError
typeInvalidCredentialsError
"""Returned if the user authentication credentials are not valid"""
type InvalidCredentialsError {
errorCode: ErrorCode!
message: String!
authenticationError: String!
}
"""Returned when attempting to register or verify a customer account without a password, when one is required."""
type MissingPasswordError {
errorCode: ErrorCode!
message: String!
}
Money
scalarMoney
scalar Money
NativeAuthStrategyError
typeNativeAuthStrategyError
"""Returned when attempting an operation that relies on the NativeAuthStrategy, if that strategy is not configured."""
type NativeAuthStrategyError {
errorCode: ErrorCode!
message: String!
}
"""Returned when attempting to set a negative OrderLine quantity."""
type NegativeQuantityError {
errorCode: ErrorCode!
message: String!
}
NoActiveOrderError
typeNoActiveOrderError
"""
Returned when invoking a mutation which depends on there being an active Order on the
current session.
"""
type NoActiveOrderError {
errorCode: ErrorCode!
message: String!
}
NotVerifiedError
typeNotVerifiedError
"""
Returned if `authOptions.requireVerification` is set to `true` (which is the default)
and an unverified user attempts to authenticate.
"""
type NotVerifiedError {
errorCode: ErrorCode!
message: String!
}
Order
typeOrder
type Order {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
type: OrderType!
"""
The date & time that the Order was placed, i.e. the Customer
completed the checkout and the Order is no longer "active"
"""
orderPlacedAt: DateTime
"""A unique code for the Order"""
code: String!
state: String!
"""An order is active as long as the payment process has not been completed"""
active: Boolean!
customer: Customer
shippingAddress: OrderAddress
billingAddress: OrderAddress
lines: [OrderLine!]!
"""
Surcharges are arbitrary modifications to the Order total which are neither
ProductVariants nor discounts resulting from applied Promotions. For example,
one-off discounts based on customer interaction, or surcharges based on payment
methods.
"""
surcharges: [Surcharge!]!
discounts: [Discount!]!
"""An array of all coupon codes applied to the Order"""
couponCodes: [String!]!
"""Promotions applied to the order. Only gets populated after the payment process has completed."""
promotions: [Promotion!]!
payments: [Payment!]
fulfillments: [Fulfillment!]
totalQuantity: Int!
"""
The subTotal is the total of all OrderLines in the Order. This figure also includes any Order-level
discounts which have been prorated (proportionally distributed) amongst the items of each OrderLine.
To get a total of all OrderLines which does not account for prorated discounts, use the
sum of `OrderLine.discountedLinePrice` values.
"""
subTotal: Money!
"""Same as subTotal, but inclusive of tax"""
subTotalWithTax: Money!
currencyCode: CurrencyCode!
shippingLines: [ShippingLine!]!
shipping: Money!
shippingWithTax: Money!
"""Equal to subTotal plus shipping"""
total: Money!
"""The final payable amount. Equal to subTotalWithTax plus shippingWithTax"""
totalWithTax: Money!
"""A summary of the taxes being applied to this Order"""
taxSummary: [OrderTaxSummary!]!
history(options: HistoryEntryListOptions): HistoryEntryList!
customFields: JSON
}
"""Returned when an order operation is rejected by an OrderInterceptor method."""
type OrderInterceptorError {
errorCode: ErrorCode!
message: String!
interceptorError: String!
}
OrderLimitError
typeOrderLimitError
"""Returned when the maximum order size limit has been reached."""
type OrderLimitError {
errorCode: ErrorCode!
message: String!
maxItems: Int!
}
OrderLine
typeOrderLine
type OrderLine {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
productVariant: ProductVariant!
featuredAsset: Asset
"""The price of a single unit, excluding tax and discounts"""
unitPrice: Money!
"""The price of a single unit, including tax but excluding discounts"""
unitPriceWithTax: Money!
"""Non-zero if the unitPrice has changed since it was initially added to Order"""
unitPriceChangeSinceAdded: Money!
"""Non-zero if the unitPriceWithTax has changed since it was initially added to Order"""
unitPriceWithTaxChangeSinceAdded: Money!
"""
The price of a single unit including discounts, excluding tax.
If Order-level discounts have been applied, this will not be the
actual taxable unit price (see `proratedUnitPrice`), but is generally the
correct price to display to customers to avoid confusion
about the internal handling of distributed Order-level discounts.
"""
discountedUnitPrice: Money!
"""The price of a single unit including discounts and tax"""
discountedUnitPriceWithTax: Money!
"""
The actual unit price, taking into account both item discounts _and_ prorated (proportionally-distributed)
Order-level discounts. This value is the true economic value of the OrderItem, and is used in tax
and refund calculations.
"""
proratedUnitPrice: Money!
"""The proratedUnitPrice including tax"""
proratedUnitPriceWithTax: Money!
"""The quantity of items purchased"""
quantity: Int!
"""The quantity at the time the Order was placed"""
orderPlacedQuantity: Int!
taxRate: Float!
"""The total price of the line excluding tax and discounts."""
linePrice: Money!
"""The total price of the line including tax but excluding discounts."""
linePriceWithTax: Money!
"""The price of the line including discounts, excluding tax"""
discountedLinePrice: Money!
"""The price of the line including discounts and tax"""
discountedLinePriceWithTax: Money!
"""
The actual line price, taking into account both item discounts _and_ prorated (proportionally-distributed)
Order-level discounts. This value is the true economic value of the OrderLine, and is used in tax
and refund calculations.
"""
proratedLinePrice: Money!
"""The proratedLinePrice including tax"""
proratedLinePriceWithTax: Money!
"""The total tax on this line"""
lineTax: Money!
discounts: [Discount!]!
taxLines: [TaxLine!]!
order: Order!
fulfillmentLines: [FulfillmentLine!]
customFields: JSON
}
OrderList
typeOrderList
type OrderList {
items: [Order!]!
totalItems: Int!
}
OrderModificationError
typeOrderModificationError
"""Returned when attempting to modify the contents of an Order that is not in the `AddingItems` state."""
type OrderModificationError {
errorCode: ErrorCode!
message: String!
}
OrderPaymentStateError
typeOrderPaymentStateError
"""Returned when attempting to add a Payment to an Order that is not in the `ArrangingPayment` state."""
type OrderPaymentStateError {
errorCode: ErrorCode!
message: String!
}
OrderStateTransitionError
typeOrderStateTransitionError
"""Returned if there is an error in transitioning the Order state"""
type OrderStateTransitionError {
errorCode: ErrorCode!
message: String!
transitionError: String!
fromState: String!
toState: String!
}
OrderTaxSummary
typeOrderTaxSummary
"""
A summary of the taxes being applied to this order, grouped
by taxRate.
"""
type OrderTaxSummary {
"""A description of this tax"""
description: String!
"""The taxRate as a percentage"""
taxRate: Float!
"""The total net price of OrderLines to which this taxRate applies"""
taxBase: Money!
"""The total tax being applied to the Order at this taxRate"""
taxTotal: Money!
}
PasswordAlreadySetError
typePasswordAlreadySetError
"""Returned when attempting to verify a customer account with a password, when a password has already been set."""
type PasswordAlreadySetError {
errorCode: ErrorCode!
message: String!
}
PasswordResetTokenExpiredError
typePasswordResetTokenExpiredError
"""
Returned if the token used to reset a Customer's password is valid, but has
expired according to the `verificationTokenDuration` setting in the AuthOptions.
"""
type PasswordResetTokenExpiredError {
errorCode: ErrorCode!
message: String!
}
PasswordResetTokenInvalidError
typePasswordResetTokenInvalidError
"""
Returned if the token used to reset a Customer's password is either
invalid or does not match any expected tokens.
"""
type PasswordResetTokenInvalidError {
errorCode: ErrorCode!
message: String!
}
PasswordValidationError
typePasswordValidationError
"""Returned when attempting to register or verify a customer account where the given password fails password validation."""
type PasswordValidationError {
errorCode: ErrorCode!
message: String!
validationErrorMessage: String!
}
"""Returned when a Payment is declined by the payment provider."""
type PaymentDeclinedError {
errorCode: ErrorCode!
message: String!
paymentErrorMessage: String!
}
PaymentFailedError
typePaymentFailedError
"""Returned when a Payment fails due to an error."""
type PaymentFailedError {
errorCode: ErrorCode!
message: String!
paymentErrorMessage: String!
}
type ShippingMethodList {
items: [ShippingMethod!]!
totalItems: Int!
}
ShippingMethodQuote
typeShippingMethodQuote
type ShippingMethodQuote {
id: ID!
price: Money!
priceWithTax: Money!
code: String!
name: String!
description: String!
"""Any optional metadata returned by the ShippingCalculator in the ShippingCalculationResult"""
metadata: JSON
customFields: JSON
}
"""The price value where the result has a single price"""
type SinglePrice {
value: Money!
}
String
scalarString
"""The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text."""
scalar String
"""
Returned when multiple items are added to an Order.
The errorResults array contains the errors that occurred for each item, if any.
"""
type UpdateMultipleOrderItemsResult {
order: Order!
errorResults: [UpdateOrderItemErrorResult!]!
}
"""
Returned if the verification token (used to verify a Customer's email address) is valid, but has
expired according to the `verificationTokenDuration` setting in the AuthOptions.
"""
type VerificationTokenExpiredError {
errorCode: ErrorCode!
message: String!
}
VerificationTokenInvalidError
typeVerificationTokenInvalidError
"""
Returned if the verification token (used to verify a Customer's email address) is either
invalid or does not match any expected tokens.
"""
type VerificationTokenInvalidError {
errorCode: ErrorCode!
message: String!
}