Skip to main content

Types

AddFulfillmentToOrderResult​

AddManualPaymentToOrderResult​

union AddManualPaymentToOrderResult=

Address​

type Address{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
fullName: String
company: String
streetLine1: String!
streetLine2: String
city: String
province: String
postalCode: String
country: Country!
phoneNumber: String
defaultShippingAddress: Boolean
defaultBillingAddress: Boolean
customFields: JSON
}

Adjustment​

type Adjustment{
adjustmentSource: String!
description: String!
amount: Money!
data: JSON
}

Administrator​

type Administrator{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
firstName: String!
lastName: String!
emailAddress: String!
user: User!
customFields: JSON
}

AdministratorList​

type AdministratorList{
items: [Administrator!]!
totalItems: Int!
}

Allocation​

type Allocation{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
productVariant: ProductVariant!
quantity: Int!
orderLine: OrderLine!
}

AlreadyRefundedError​

"""
Returned if an attempting to refund an OrderItem which has already been refunded
"""
type AlreadyRefundedError{
errorCode: ErrorCode!
message: String!
refundId: ID!
}

ApplyCouponCodeResult​

Asset​

type Asset{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
name: String!
type: AssetType!
fileSize: Int!
mimeType: String!
width: Int!
height: Int!
source: String!
preview: String!
focalPoint: Coordinate
tags: [Tag!]!
customFields: JSON
}

AssetList​

type AssetList{
items: [Asset!]!
totalItems: Int!
}

AuthenticationMethod​

type AuthenticationMethod{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
strategy: String!
}

AuthenticationResult​

union AuthenticationResult=

Boolean​

"""
The Boolean scalar type represents true or `false`.
"""
scalar Boolean

BooleanCustomFieldConfig​

type BooleanCustomFieldConfig{
name: String!
type: String!
list: Boolean!
label: [LocalizedString!]
description: [LocalizedString!]
readonly: Boolean
internal: Boolean
nullable: Boolean
ui: JSON
}

CancelActiveOrderError​

"""
Returned if an attempting to cancel lines from an Order which is still active
"""
type CancelActiveOrderError{
errorCode: ErrorCode!
message: String!
orderState: String!
}

CancelOrderResult​

CancelPaymentError​

"""
Returned if the Payment cancellation fails
"""
type CancelPaymentError{
errorCode: ErrorCode!
message: String!
paymentErrorMessage: String!
}

CancelPaymentResult​

Cancellation​

type Cancellation{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
productVariant: ProductVariant!
quantity: Int!
orderLine: OrderLine!
}

Channel​

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
}

ChannelDefaultLanguageError​

"""
Returned when the default LanguageCode of a Channel is no longer found in the `availableLanguages`
of the GlobalSettings
"""
type ChannelDefaultLanguageError{
errorCode: ErrorCode!
message: String!
language: String!
channelCode: String!
}

ChannelList​

type ChannelList{
items: [Channel!]!
totalItems: Int!
}

Collection​

type Collection{
isPrivate: Boolean!
inheritFilters: Boolean!
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode
name: String!
slug: String!
breadcrumbs: [CollectionBreadcrumb!]!
position: Int!
description: String!
featuredAsset: Asset
assets: [Asset!]!
parent: Collection
parentId: ID!
children: [Collection!]
translations: [CollectionTranslation!]!
productVariants(options: ProductVariantListOptions): ProductVariantList!
customFields: JSON
}

CollectionBreadcrumb​

type CollectionBreadcrumb{
id: ID!
name: String!
slug: String!
}

CollectionList​

type CollectionList{
items: [Collection!]!
totalItems: Int!
}

CollectionResult​

"""
Which Collections are present in the products returned
by the search, and in what quantity.
"""
type CollectionResult{
collection: Collection!
count: Int!
}

CollectionTranslation​

type CollectionTranslation{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
name: String!
slug: String!
description: String!
}

ConfigArg​

type ConfigArg{
name: String!
value: String!
}

ConfigArgDefinition​

type ConfigArgDefinition{
name: String!
type: String!
list: Boolean!
required: Boolean!
defaultValue: JSON
label: String
description: String
ui: JSON
}

ConfigurableOperation​

type ConfigurableOperation{
code: String!
args: [ConfigArg!]!
}

ConfigurableOperationDefinition​

type ConfigurableOperationDefinition{
code: String!
description: String!
}

Coordinate​

type Coordinate{
x: Float!
y: Float!
}

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​

type CountryList{
items: [Country!]!
totalItems: Int!
}

CouponCodeExpiredError​

"""
Returned if the provided coupon code is invalid
"""
type CouponCodeExpiredError{
errorCode: ErrorCode!
message: String!
couponCode: String!
}

CouponCodeInvalidError​

"""
Returned if the provided coupon code is invalid
"""
type CouponCodeInvalidError{
errorCode: ErrorCode!
message: String!
couponCode: String!
}

CouponCodeLimitError​

"""
Returned if the provided coupon code is invalid
"""
type CouponCodeLimitError{
errorCode: ErrorCode!
message: String!
couponCode: String!
limit: Int!
}

CreateAssetResult​

union CreateAssetResult=

CreateChannelResult​

union CreateChannelResult=

CreateCustomerResult​

union CreateCustomerResult=

CreateFulfillmentError​

"""
Returned if an error is thrown in a FulfillmentHandler's createFulfillment method
"""
type CreateFulfillmentError{
errorCode: ErrorCode!
message: String!
fulfillmentHandlerError: String!
}

CreatePromotionResult​

union CreatePromotionResult=

CurrentUser​

type CurrentUser{
id: ID!
identifier: String!
channels: [CurrentUserChannel!]!
}

CurrentUserChannel​

type CurrentUserChannel{
id: ID!
token: String!
code: String!
permissions: [Permission!]!
}

CustomFieldConfig​

CustomFields​

type CustomFields{
Address: [CustomFieldConfig!]!
Administrator: [CustomFieldConfig!]!
Channel: [CustomFieldConfig!]!
Collection: [CustomFieldConfig!]!
Customer: [CustomFieldConfig!]!
CustomerGroup: [CustomFieldConfig!]!
FacetValue: [CustomFieldConfig!]!
Fulfillment: [CustomFieldConfig!]!
GlobalSettings: [CustomFieldConfig!]!
OrderLine: [CustomFieldConfig!]!
PaymentMethod: [CustomFieldConfig!]!
Product: [CustomFieldConfig!]!
ProductOption: [CustomFieldConfig!]!
ProductOptionGroup: [CustomFieldConfig!]!
ProductVariant: [CustomFieldConfig!]!
Promotion: [CustomFieldConfig!]!
Region: [CustomFieldConfig!]!
Seller: [CustomFieldConfig!]!
ShippingMethod: [CustomFieldConfig!]!
StockLocation: [CustomFieldConfig!]!
TaxCategory: [CustomFieldConfig!]!
TaxRate: [CustomFieldConfig!]!
}

Customer​

type Customer{
groups: [CustomerGroup!]!
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
title: String
firstName: String!
lastName: String!
phoneNumber: String
emailAddress: String!
addresses: [Address!]
orders(options: OrderListOptions): OrderList!
user: User
customFields: JSON
}

CustomerGroup​

type CustomerGroup{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
name: String!
customers(options: CustomerListOptions): CustomerList!
customFields: JSON
}

CustomerGroupList​

type CustomerGroupList{
items: [CustomerGroup!]!
totalItems: Int!
}

CustomerList​

type CustomerList{
items: [Customer!]!
totalItems: Int!
}

DateTime​

"""
A date-time string at UTC, such as 2007-12-03T10:15:30Z, compliant with the date-time format outlined in section 5.6 of the RFC 3339 profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar.
"""
scalar DateTime

DateTimeCustomFieldConfig​

"""
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
min: String
max: String
step: Int
ui: JSON
}

DeletionResponse​

type DeletionResponse{
message: String
}

Discount​

type Discount{
adjustmentSource: String!
description: String!
amount: Money!
amountWithTax: Money!
}

EmailAddressConflictError​

"""
Returned when attempting to create a Customer with an email address already registered to an existing User.
"""
type EmailAddressConflictError{
errorCode: ErrorCode!
message: String!
}

EmptyOrderLineSelectionError​

"""
Returned if no OrderLines have been specified for the operation
"""
type EmptyOrderLineSelectionError{
errorCode: ErrorCode!
message: String!
}

Facet​

type Facet{
isPrivate: Boolean!
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
name: String!
code: String!
values: [FacetValue!]!
translations: [FacetTranslation!]!
customFields: JSON
}

FacetInUseError​

type FacetInUseError{
errorCode: ErrorCode!
message: String!
facetCode: String!
productCount: Int!
variantCount: Int!
}

FacetList​

type FacetList{
items: [Facet!]!
totalItems: Int!
}

FacetTranslation​

type FacetTranslation{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
name: String!
}

FacetValue​

type FacetValue{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
facet: Facet!
name: String!
code: String!
translations: [FacetValueTranslation!]!
customFields: JSON
}

FacetValueList​

type FacetValueList{
items: [FacetValue!]!
totalItems: Int!
}

FacetValueResult​

"""
Which FacetValues are present in the products returned
by the search, and in what quantity.
"""
type FacetValueResult{
facetValue: FacetValue!
count: Int!
}

FacetValueTranslation​

type FacetValueTranslation{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
name: String!
}

Float​

"""
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

FloatCustomFieldConfig​

type FloatCustomFieldConfig{
name: String!
type: String!
list: Boolean!
label: [LocalizedString!]
description: [LocalizedString!]
readonly: Boolean
internal: Boolean
nullable: Boolean
min: Float
max: Float
step: Float
ui: JSON
}

Fulfillment​

type Fulfillment{
nextStates: [String!]!
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
lines: [FulfillmentLine!]!
summary: [FulfillmentLine!]!
state: String!
method: String!
trackingCode: String
customFields: JSON
}

FulfillmentLine​

type FulfillmentLine{
orderLine: OrderLine!
orderLineId: ID!
quantity: Int!
fulfillment: Fulfillment!
fulfillmentId: ID!
}

FulfillmentStateTransitionError​

"""
Returned when there is an error in transitioning the Fulfillment state
"""
type FulfillmentStateTransitionError{
errorCode: ErrorCode!
message: String!
transitionError: String!
fromState: String!
toState: String!
}

GlobalSettings​

type GlobalSettings{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
availableLanguages: [LanguageCode!]!
trackInventory: Boolean!
outOfStockThreshold: Int!
serverConfig: ServerConfig!
customFields: JSON
}

GuestCheckoutError​

"""
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!
}

HistoryEntry​

type HistoryEntry{
isPublic: Boolean!
administrator: Administrator
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
data: JSON!
}

HistoryEntryList​

type HistoryEntryList{
items: [HistoryEntry!]!
totalItems: Int!
}

ID​

"""
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

ImportInfo​

type ImportInfo{
errors: [String!]
processed: Int!
imported: Int!
}

IneligibleShippingMethodError​

"""
Returned when attempting to set a ShippingMethod for which the Order is not eligible
"""
type IneligibleShippingMethodError{
errorCode: ErrorCode!
message: String!
}

InsufficientStockError​

"""
Returned when attempting to add more items to the Order than are available
"""
type InsufficientStockError{
errorCode: ErrorCode!
message: String!
quantityAvailable: Int!
order: Order!
}

InsufficientStockOnHandError​

"""
Returned if attempting to create a Fulfillment when there is insufficient
stockOnHand of a ProductVariant to satisfy the requested quantity.
"""
type InsufficientStockOnHandError{
errorCode: ErrorCode!
message: String!
productVariantId: ID!
productVariantName: String!
stockOnHand: Int!
}

Int​

"""
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​

type IntCustomFieldConfig{
name: String!
type: String!
list: Boolean!
label: [LocalizedString!]
description: [LocalizedString!]
readonly: Boolean
internal: Boolean
nullable: Boolean
min: Int
max: Int
step: Int
ui: JSON
}

InvalidCredentialsError​

"""
Returned if the user authentication credentials are not valid
"""
type InvalidCredentialsError{
errorCode: ErrorCode!
message: String!
authenticationError: String!
}

InvalidFulfillmentHandlerError​

"""
Returned if the specified FulfillmentHandler code is not valid
"""
type InvalidFulfillmentHandlerError{
errorCode: ErrorCode!
message: String!
}

ItemsAlreadyFulfilledError​

"""
Returned if the specified items are already part of a Fulfillment
"""
type ItemsAlreadyFulfilledError{
errorCode: ErrorCode!
message: String!
}

JSON​

"""
The JSON scalar type represents JSON values as specified by [ECMA-404](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf).
"""
scalar JSON

Job​

type Job{
id: ID!
createdAt: DateTime!
startedAt: DateTime
settledAt: DateTime
queueName: String!
state: JobState!
progress: Float!
data: JSON
result: JSON
error: JSON
isSettled: Boolean!
duration: Int!
retries: Int!
attempts: Int!
}

JobBufferSize​

type JobBufferSize{
bufferId: String!
size: Int!
}

JobList​

type JobList{
items: [Job!]!
totalItems: Int!
}

JobQueue​

type JobQueue{
name: String!
running: Boolean!
}

LanguageNotAvailableError​

"""
Returned if attempting to set a Channel's defaultLanguageCode to a language which is not enabled in GlobalSettings
"""
type LanguageNotAvailableError{
errorCode: ErrorCode!
message: String!
languageCode: String!
}

LocaleStringCustomFieldConfig​

type LocaleStringCustomFieldConfig{
name: String!
type: String!
list: Boolean!
length: Int
label: [LocalizedString!]
description: [LocalizedString!]
readonly: Boolean
internal: Boolean
nullable: Boolean
pattern: String
ui: JSON
}

LocaleTextCustomFieldConfig​

type LocaleTextCustomFieldConfig{
name: String!
type: String!
list: Boolean!
label: [LocalizedString!]
description: [LocalizedString!]
readonly: Boolean
internal: Boolean
nullable: Boolean
ui: JSON
}

LocalizedString​

type LocalizedString{
languageCode: LanguageCode!
value: String!
}

ManualPaymentStateError​

"""
Returned when a call to addManualPaymentToOrder is made but the Order
is not in the required state.
"""
type ManualPaymentStateError{
errorCode: ErrorCode!
message: String!
}

MetricSummary​

type MetricSummary{
interval: MetricInterval!
type: MetricType!
title: String!
entries: [MetricSummaryEntry!]!
}

MetricSummaryEntry​

type MetricSummaryEntry{
label: String!
value: Float!
}

MimeTypeError​

type MimeTypeError{
errorCode: ErrorCode!
message: String!
fileName: String!
mimeType: String!
}

MissingConditionsError​

"""
Returned if a PromotionCondition has neither a couponCode nor any conditions set
"""
type MissingConditionsError{
errorCode: ErrorCode!
message: String!
}

ModifyOrderResult​

Money​

"""
The Money scalar type represents monetary values and supports signed double-precision fractional values as specified by [IEEE 754](https://en.wikipedia.org/wiki/IEEE_floating_point).
"""
scalar Money

MultipleOrderError​

"""
Returned if an operation has specified OrderLines from multiple Orders
"""
type MultipleOrderError{
errorCode: ErrorCode!
message: String!
}

NativeAuthStrategyError​

"""
Returned when attempting an operation that relies on the NativeAuthStrategy, if that strategy is not configured.
"""
type NativeAuthStrategyError{
errorCode: ErrorCode!
message: String!
}

NativeAuthenticationResult​

union NativeAuthenticationResult=

NegativeQuantityError​

"""
Returned when attempting to set a negative OrderLine quantity.
"""
type NegativeQuantityError{
errorCode: ErrorCode!
message: String!
}

NoActiveOrderError​

"""
Returned when invoking a mutation which depends on there being an active Order on the
current session.
"""
type NoActiveOrderError{
errorCode: ErrorCode!
message: String!
}

NoChangesSpecifiedError​

"""
Returned when a call to modifyOrder fails to specify any changes
"""
type NoChangesSpecifiedError{
errorCode: ErrorCode!
message: String!
}

NothingToRefundError​

"""
Returned if an attempting to refund an Order but neither items nor shipping refund was specified
"""
type NothingToRefundError{
errorCode: ErrorCode!
message: String!
}

Order​

type Order{
nextStates: [String!]!
modifications: [OrderModification!]!
sellerOrders: [Order!]
aggregateOrder: Order
aggregateOrderId: ID
channels: [Channel!]!
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!]!
customFields: JSON
}

OrderAddress​

type OrderAddress{
fullName: String
company: String
streetLine1: String
streetLine2: String
city: String
province: String
postalCode: String
country: String
countryCode: String
phoneNumber: String
customFields: JSON
}

OrderLimitError​

"""
Returned when the maximum order size limit has been reached.
"""
type OrderLimitError{
errorCode: ErrorCode!
message: String!
maxItems: Int!
}

OrderLine​

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!
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​

type OrderList{
items: [Order!]!
totalItems: Int!
}

OrderModification​

type OrderModification{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
priceChange: Money!
note: String!
surcharges: [Surcharge!]
payment: Payment
refund: Refund
isSettled: Boolean!
}

OrderModificationError​

"""
Returned when attempting to modify the contents of an Order that is not in the AddingItems state.
"""
type OrderModificationError{
errorCode: ErrorCode!
message: String!
}

OrderModificationLine​

type OrderModificationLine{
orderLine: OrderLine!
orderLineId: ID!
quantity: Int!
modification: OrderModification!
modificationId: ID!
}

OrderModificationStateError​

"""
Returned when attempting to modify the contents of an Order that is not in the Modifying state.
"""
type OrderModificationStateError{
errorCode: ErrorCode!
message: String!
}

OrderProcessState​

type OrderProcessState{
name: String!
to: [String!]!
}

OrderStateTransitionError​

"""
Returned if there is an error in transitioning the Order state
"""
type OrderStateTransitionError{
errorCode: ErrorCode!
message: String!
transitionError: String!
fromState: String!
toState: String!
}

OrderTaxSummary​

"""
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!
}

Payment​

type Payment{
nextStates: [String!]!
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
method: String!
amount: Money!
state: String!
transactionId: String
errorMessage: String
refunds: [Refund!]!
metadata: JSON
}

PaymentMethod​

type PaymentMethod{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
name: String!
code: String!
description: String!
enabled: Boolean!
translations: [PaymentMethodTranslation!]!
customFields: JSON
}

PaymentMethodList​

type PaymentMethodList{
items: [PaymentMethod!]!
totalItems: Int!
}

PaymentMethodMissingError​

"""
Returned when a call to modifyOrder fails to include a paymentMethod even
though the price has increased as a result of the changes.
"""
type PaymentMethodMissingError{
errorCode: ErrorCode!
message: String!
}

PaymentMethodQuote​

type PaymentMethodQuote{
id: ID!
code: String!
name: String!
description: String!
isEligible: Boolean!
eligibilityMessage: String
customFields: JSON
}

PaymentMethodTranslation​

type PaymentMethodTranslation{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
name: String!
description: String!
}

PaymentOrderMismatchError​

"""
Returned if an attempting to refund a Payment against OrderLines from a different Order
"""
type PaymentOrderMismatchError{
errorCode: ErrorCode!
message: String!
}

PaymentStateTransitionError​

"""
Returned when there is an error in transitioning the Payment state
"""
type PaymentStateTransitionError{
errorCode: ErrorCode!
message: String!
transitionError: String!
fromState: String!
toState: String!
}

PermissionDefinition​

type PermissionDefinition{
name: String!
description: String!
assignable: Boolean!
}

PriceRange​

"""
The price range where the result has more than one price
"""
type PriceRange{
min: Money!
max: Money!
}

Product​

type Product{
enabled: Boolean!
channels: [Channel!]!
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
name: String!
slug: String!
description: String!
featuredAsset: Asset
assets: [Asset!]!
"""
Returns all ProductVariants
"""
variants: [ProductVariant!]!
"""
Returns a paginated, sortable, filterable list of ProductVariants
"""
optionGroups: [ProductOptionGroup!]!
facetValues: [FacetValue!]!
translations: [ProductTranslation!]!
collections: [Collection!]!
customFields: JSON
}

ProductList​

type ProductList{
items: [Product!]!
totalItems: Int!
}

ProductOption​

type ProductOption{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
code: String!
name: String!
groupId: ID!
translations: [ProductOptionTranslation!]!
customFields: JSON
}

ProductOptionGroup​

type ProductOptionGroup{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
code: String!
name: String!
options: [ProductOption!]!
customFields: JSON
}

ProductOptionGroupTranslation​

type ProductOptionGroupTranslation{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
name: String!
}

ProductOptionInUseError​

type ProductOptionInUseError{
errorCode: ErrorCode!
message: String!
optionGroupCode: String!
productVariantCount: Int!
}

ProductOptionTranslation​

type ProductOptionTranslation{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
name: String!
}

ProductTranslation​

type ProductTranslation{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
name: String!
slug: String!
description: String!
}

ProductVariant​

type ProductVariant{
enabled: Boolean!
trackInventory: GlobalFlag!
stockOnHand: Int!
stockAllocated: Int!
outOfStockThreshold: Int!
useGlobalOutOfStockThreshold: Boolean!
stockLevels: [StockLevel!]!
stockMovements(options: StockMovementListOptions): StockMovementList!
channels: [Channel!]!
id: ID!
product: Product!
productId: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
sku: String!
name: String!
featuredAsset: Asset
assets: [Asset!]!
price: Money!
currencyCode: CurrencyCode!
priceWithTax: Money!
stockLevel: String!
taxRateApplied: TaxRate!
taxCategory: TaxCategory!
options: [ProductOption!]!
facetValues: [FacetValue!]!
translations: [ProductVariantTranslation!]!
customFields: JSON
}

ProductVariantList​

type ProductVariantList{
items: [ProductVariant!]!
totalItems: Int!
}

ProductVariantPrice​

type ProductVariantPrice{
currencyCode: CurrencyCode!
price: Int!
}

ProductVariantTranslation​

type ProductVariantTranslation{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
name: String!
}

Promotion​

type Promotion{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
startsAt: DateTime
endsAt: DateTime
couponCode: String
perCustomerUsageLimit: Int
name: String!
description: String!
enabled: Boolean!
conditions: [ConfigurableOperation!]!
translations: [PromotionTranslation!]!
customFields: JSON
}

PromotionList​

type PromotionList{
items: [Promotion!]!
totalItems: Int!
}

PromotionTranslation​

type PromotionTranslation{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
name: String!
description: String!
}

Province​

type Province{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
code: String!
type: String!
name: String!
enabled: Boolean!
parent: Region
parentId: ID
translations: [RegionTranslation!]!
customFields: JSON
}

ProvinceList​

type ProvinceList{
items: [Province!]!
totalItems: Int!
}

QuantityTooGreatError​

"""
Returned if the specified quantity of an OrderLine is greater than the number of items in that line
"""
type QuantityTooGreatError{
errorCode: ErrorCode!
message: String!
}

Refund​

type Refund{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
items: Money!
shipping: Money!
adjustment: Money!
total: Money!
method: String
state: String!
transactionId: String
reason: String
lines: [RefundLine!]!
paymentId: ID!
metadata: JSON
}

RefundLine​

type RefundLine{
orderLine: OrderLine!
orderLineId: ID!
quantity: Int!
refund: Refund!
refundId: ID!
}

RefundOrderResult​

RefundOrderStateError​

"""
Returned if an attempting to refund an Order which is not in the expected state
"""
type RefundOrderStateError{
errorCode: ErrorCode!
message: String!
orderState: String!
}

RefundPaymentIdMissingError​

"""
Returned when a call to modifyOrder fails to include a refundPaymentId even
though the price has decreased as a result of the changes.
"""
type RefundPaymentIdMissingError{
errorCode: ErrorCode!
message: String!
}

RefundStateTransitionError​

"""
Returned when there is an error in transitioning the Refund state
"""
type RefundStateTransitionError{
errorCode: ErrorCode!
message: String!
transitionError: String!
fromState: String!
toState: String!
}

RegionTranslation​

type RegionTranslation{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
name: String!
}

RelationCustomFieldConfig​

type RelationCustomFieldConfig{
name: String!
type: String!
list: Boolean!
label: [LocalizedString!]
description: [LocalizedString!]
readonly: Boolean
internal: Boolean
nullable: Boolean
entity: String!
scalarFields: [String!]!
ui: JSON
}

Release​

type Release{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
productVariant: ProductVariant!
quantity: Int!
}

RemoveFacetFromChannelResult​

union RemoveFacetFromChannelResult=

RemoveOptionGroupFromProductResult​

union RemoveOptionGroupFromProductResult=

RemoveOrderItemsResult​

union RemoveOrderItemsResult=

Return​

type Return{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
productVariant: ProductVariant!
quantity: Int!
}

Role​

type Role{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
code: String!
description: String!
permissions: [Permission!]!
channels: [Channel!]!
}

RoleList​

type RoleList{
items: [Role!]!
totalItems: Int!
}

Sale​

type Sale{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
productVariant: ProductVariant!
quantity: Int!
}

SearchReindexResponse​

type SearchReindexResponse{
success: Boolean!
}

SearchResponse​

type SearchResponse{
items: [SearchResult!]!
totalItems: Int!
facetValues: [FacetValueResult!]!
collections: [CollectionResult!]!
}

SearchResult​

type SearchResult{
enabled: Boolean!
"""
An array of ids of the Channels in which this result appears
"""
channelIds: [ID!]!
sku: String!
slug: String!
productId: ID!
productName: String!
productAsset: SearchResultAsset
productVariantId: ID!
productVariantName: String!
productVariantAsset: SearchResultAsset
priceWithTax: SearchResultPrice!
currencyCode: CurrencyCode!
description: String!
facetIds: [ID!]!
facetValueIds: [ID!]!
"""
An array of ids of the Collections in which this result appears
"""
collectionIds: [ID!]!
"""
A relevance score for the result. Differs between database implementations
"""
score: Float!
}

SearchResultAsset​

type SearchResultAsset{
id: ID!
preview: String!
focalPoint: Coordinate
}

SearchResultPrice​

"""
The price of a search result product, either as a range or as a single price
"""
union SearchResultPrice=

Seller​

type Seller{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
name: String!
customFields: JSON
}

SellerList​

type SellerList{
items: [Seller!]!
totalItems: Int!
}

ServerConfig​

type ServerConfig{
orderProcess: [OrderProcessState!]!
permittedAssetTypes: [String!]!
permissions: [PermissionDefinition!]!
customFieldConfig: CustomFields!
}

SetCustomerForDraftOrderResult​

union SetCustomerForDraftOrderResult=

SetOrderShippingMethodResult​

SettlePaymentError​

"""
Returned if the Payment settlement fails
"""
type SettlePaymentError{
errorCode: ErrorCode!
message: String!
paymentErrorMessage: String!
}

SettlePaymentResult​

SettleRefundResult​

union SettleRefundResult=

ShippingLine​

type ShippingLine{
id: ID!
shippingMethod: ShippingMethod!
price: Money!
priceWithTax: Money!
discountedPrice: Money!
discountedPriceWithTax: Money!
discounts: [Discount!]!
}

ShippingMethod​

type ShippingMethod{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
code: String!
name: String!
description: String!
fulfillmentHandlerCode: String!
translations: [ShippingMethodTranslation!]!
customFields: JSON
}

ShippingMethodList​

type ShippingMethodList{
items: [ShippingMethod!]!
totalItems: Int!
}

ShippingMethodQuote​

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
}

ShippingMethodTranslation​

type ShippingMethodTranslation{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
name: String!
description: String!
}

SinglePrice​

"""
The price value where the result has a single price
"""
type SinglePrice{
value: Money!
}

StockAdjustment​

type StockAdjustment{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
productVariant: ProductVariant!
quantity: Int!
}

StockLevel​

type StockLevel{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
stockLocationId: ID!
stockOnHand: Int!
stockAllocated: Int!
stockLocation: StockLocation!
}

StockLocation​

type StockLocation{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
name: String!
description: String!
customFields: JSON
}

StockLocationList​

type StockLocationList{
items: [StockLocation!]!
totalItems: Int!
}

StockMovementItem​

union StockMovementItem=

StockMovementList​

type StockMovementList{
totalItems: Int!
}

String​

"""
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

StringCustomFieldConfig​

type StringCustomFieldConfig{
name: String!
type: String!
list: Boolean!
length: Int
label: [LocalizedString!]
description: [LocalizedString!]
readonly: Boolean
internal: Boolean
nullable: Boolean
pattern: String
options: [StringFieldOption!]
ui: JSON
}

StringFieldOption​

type StringFieldOption{
value: String!
label: [LocalizedString!]
}

Success​

"""
Indicates that an operation succeeded, where we do not want to return any more specific information.
"""
type Success{
success: Boolean!
}

Surcharge​

type Surcharge{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
description: String!
sku: String
taxLines: [TaxLine!]!
price: Money!
priceWithTax: Money!
taxRate: Float!
}

Tag​

type Tag{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
value: String!
}

TagList​

type TagList{
items: [Tag!]!
totalItems: Int!
}

TaxCategory​

type TaxCategory{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
name: String!
isDefault: Boolean!
customFields: JSON
}

TaxCategoryList​

type TaxCategoryList{
items: [TaxCategory!]!
totalItems: Int!
}

TaxLine​

type TaxLine{
description: String!
taxRate: Float!
}

TaxRate​

type TaxRate{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
name: String!
enabled: Boolean!
value: Float!
category: TaxCategory!
zone: Zone!
customerGroup: CustomerGroup
customFields: JSON
}

TaxRateList​

type TaxRateList{
items: [TaxRate!]!
totalItems: Int!
}

TestShippingMethodQuote​

type TestShippingMethodQuote{
price: Money!
priceWithTax: Money!
metadata: JSON
}

TestShippingMethodResult​

type TestShippingMethodResult{
eligible: Boolean!
}

TextCustomFieldConfig​

type TextCustomFieldConfig{
name: String!
type: String!
list: Boolean!
label: [LocalizedString!]
description: [LocalizedString!]
readonly: Boolean
internal: Boolean
nullable: Boolean
ui: JSON
}

TransitionFulfillmentToStateResult​

union TransitionFulfillmentToStateResult=

TransitionOrderToStateResult​

union TransitionOrderToStateResult=

TransitionPaymentToStateResult​

union TransitionPaymentToStateResult=

UpdateChannelResult​

union UpdateChannelResult=

UpdateCustomerResult​

union UpdateCustomerResult=

UpdateGlobalSettingsResult​

union UpdateGlobalSettingsResult=

UpdateOrderItemsResult​

UpdatePromotionResult​

union UpdatePromotionResult=

Upload​

"""
The Upload scalar type represents a file upload.
"""
scalar Upload

User​

type User{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
identifier: String!
verified: Boolean!
roles: [Role!]!
lastLogin: DateTime
authenticationMethods: [AuthenticationMethod!]!
customFields: JSON
}

Zone​

type Zone{
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
name: String!
members: [Region!]!
customFields: JSON
}

ZoneList​

type ZoneList{
items: [Zone!]!
totalItems: Int!
}