Types
AddFulfillmentToOrderResult
union 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!
type: AdjustmentType!
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
Allocation
type Allocation {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
productVariant: ProductVariant!
type: StockMovementType!
quantity: Int!
orderLine: OrderLine!
customFields: JSON
}
AlreadyRefundedError
"""
Returned if an attempting to refund an OrderItem which has already been refunded
"""
type AlreadyRefundedError {
errorCode: ErrorCode!
message: String!
refundId: ID!
}
ApplyCouponCodeResult
union 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
AuthenticationMethod
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
requiresPermission: [Permission!]
ui: JSON
}
BooleanStructFieldConfig
type BooleanStructFieldConfig {
name: String!
type: String!
list: Boolean!
label: [LocalizedString!]
description: [LocalizedString!]
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
union CancelOrderResult =
CancelPaymentError
"""
Returned if the Payment cancellation fails
"""
type CancelPaymentError {
errorCode: ErrorCode!
message: String!
paymentErrorMessage: String!
}
CancelPaymentResult
union CancelPaymentResult =
Cancellation
type Cancellation {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
productVariant: ProductVariant!
type: StockMovementType!
quantity: Int!
orderLine: OrderLine!
customFields: JSON
}
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
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!]
filters: [ConfigurableOperation!]!
translations: [CollectionTranslation!]!
productVariants(options: ProductVariantListOptions): ProductVariantList!
customFields: JSON
}
CollectionBreadcrumb
CollectionList
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
ConfigArgDefinition
type ConfigArgDefinition {
name: String!
type: String!
list: Boolean!
required: Boolean!
defaultValue: JSON
label: String
description: String
ui: JSON
}
ConfigurableOperation
ConfigurableOperationDefinition
type ConfigurableOperationDefinition {
code: String!
args: [ConfigArgDefinition!]!
description: String!
}
Coordinate
Country
"""
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 asUpdateAddressInput
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
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
CurrentUserChannel
CustomFieldConfig
union CustomFieldConfig =
CustomFields
"""
This type is deprecated in v2.2 in favor of the EntityCustomFields type,
which allows custom fields to be defined on user-supplied entities.
"""
type CustomFields {
Address: [CustomFieldConfig!]!
Administrator: [CustomFieldConfig!]!
Asset: [CustomFieldConfig!]!
Channel: [CustomFieldConfig!]!
Collection: [CustomFieldConfig!]!
Customer: [CustomFieldConfig!]!
CustomerGroup: [CustomFieldConfig!]!
Facet: [CustomFieldConfig!]!
FacetValue: [CustomFieldConfig!]!
Fulfillment: [CustomFieldConfig!]!
GlobalSettings: [CustomFieldConfig!]!
HistoryEntry: [CustomFieldConfig!]!
Order: [CustomFieldConfig!]!
OrderLine: [CustomFieldConfig!]!
Payment: [CustomFieldConfig!]!
PaymentMethod: [CustomFieldConfig!]!
Product: [CustomFieldConfig!]!
ProductOption: [CustomFieldConfig!]!
ProductOptionGroup: [CustomFieldConfig!]!
ProductVariant: [CustomFieldConfig!]!
ProductVariantPrice: [CustomFieldConfig!]!
Promotion: [CustomFieldConfig!]!
Refund: [CustomFieldConfig!]!
Region: [CustomFieldConfig!]!
Seller: [CustomFieldConfig!]!
Session: [CustomFieldConfig!]!
ShippingLine: [CustomFieldConfig!]!
ShippingMethod: [CustomFieldConfig!]!
StockLevel: [CustomFieldConfig!]!
StockLocation: [CustomFieldConfig!]!
StockMovement: [CustomFieldConfig!]!
TaxCategory: [CustomFieldConfig!]!
TaxRate: [CustomFieldConfig!]!
User: [CustomFieldConfig!]!
Zone: [CustomFieldConfig!]!
}
Customer
type Customer {
groups: [CustomerGroup!]!
history(options: HistoryEntryListOptions): HistoryEntryList!
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
CustomerList
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
requiresPermission: [Permission!]
min: String
max: String
step: Int
ui: JSON
}
DateTimeStructFieldConfig
"""
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
}
DeletionResponse
Discount
type Discount {
adjustmentSource: String!
type: AdjustmentType!
description: String!
amount: Money!
amountWithTax: Money!
}
DuplicateEntityError
DuplicateEntityResult
union DuplicateEntityResult =
DuplicateEntitySuccess
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!
}
EntityCustomFields
EntityDuplicatorDefinition
type EntityDuplicatorDefinition {
code: String!
args: [ConfigArgDefinition!]!
description: String!
forEntities: [String!]!
requiresPermission: [Permission!]!
}
Facet
type Facet {
isPrivate: Boolean!
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
name: String!
code: String!
values: [FacetValue!]!
"""
Returns a paginated, sortable, filterable list of the Facet's values. Added in v2.1.0.
"""
valueList(options: FacetValueListOptions): FacetValueList!
translations: [FacetTranslation!]!
customFields: JSON
}
FacetInUseError
type FacetInUseError {
errorCode: ErrorCode!
message: String!
facetCode: String!
productCount: Int!
variantCount: Int!
}
FacetList
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!
facetId: ID!
name: String!
code: String!
translations: [FacetValueTranslation!]!
customFields: JSON
}
FacetValueList
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."""
scalar Float
FloatCustomFieldConfig
type FloatCustomFieldConfig {
name: String!
type: String!
list: Boolean!
label: [LocalizedString!]
description: [LocalizedString!]
readonly: Boolean
internal: Boolean
nullable: Boolean
requiresPermission: [Permission!]
min: Float
max: Float
step: Float
ui: JSON
}
FloatStructFieldConfig
type FloatStructFieldConfig {
name: String!
type: String!
list: Boolean!
label: [LocalizedString!]
description: [LocalizedString!]
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!
type: HistoryEntryType!
data: JSON!
customFields: JSON
}
HistoryEntryList
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
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
requiresPermission: [Permission!]
min: Int
max: Int
step: Int
ui: JSON
}
IntStructFieldConfig
type IntStructFieldConfig {
name: String!
type: String!
list: Boolean!
label: [LocalizedString!]
description: [LocalizedString!]
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
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
JobList
JobQueue
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
requiresPermission: [Permission!]
pattern: String
ui: JSON
}
LocaleTextCustomFieldConfig
type LocaleTextCustomFieldConfig {
name: String!
type: String!
list: Boolean!
label: [LocalizedString!]
description: [LocalizedString!]
readonly: Boolean
internal: Boolean
nullable: Boolean
requiresPermission: [Permission!]
ui: JSON
}
LocalizedString
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
MimeTypeError
MissingConditionsError
"""
Returned if a PromotionCondition has neither a couponCode nor any conditions set
"""
type MissingConditionsError {
errorCode: ErrorCode!
message: String!
}
ModifyOrderResult
union ModifyOrderResult =
Money
"""
The
Money
scalar type represents monetary values and supports signed double-precision fractional values as specified by IEEE 754."""
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!]!
history(options: HistoryEntryListOptions): HistoryEntryList!
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
}
OrderInterceptorError
"""
Returned when an order operation is rejected by an OrderInterceptor method.
"""
type OrderInterceptorError {
errorCode: ErrorCode!
message: String!
interceptorError: String!
}
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 thecorrect 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
OrderModification
type OrderModification {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
priceChange: Money!
note: String!
lines: [OrderModificationLine!]!
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
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
customFields: JSON
}
PaymentMethod
type PaymentMethod {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
name: String!
code: String!
description: String!
enabled: Boolean!
checker: ConfigurableOperation
handler: ConfigurableOperation!
translations: [PaymentMethodTranslation!]!
customFields: JSON
}
PaymentMethodList
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
PriceRange
"""
The price range where the result has more than one price
"""
type PriceRange {
min: Money!
max: Money!
}
Product
type Product {
channels: [Channel!]!
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
name: String!
slug: String!
description: String!
enabled: Boolean!
featuredAsset: Asset
assets: [Asset!]!
"""
Returns all ProductVariants
"""
variants: [ProductVariant!]!
"""
Returns a paginated, sortable, filterable list of ProductVariants
"""
variantList(options: ProductVariantListOptions): ProductVariantList!
optionGroups: [ProductOptionGroup!]!
facetValues: [FacetValue!]!
translations: [ProductTranslation!]!
collections: [Collection!]!
customFields: JSON
}
ProductList
ProductOption
type ProductOption {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
code: String!
name: String!
groupId: ID!
group: ProductOptionGroup!
translations: [ProductOptionTranslation!]!
customFields: JSON
}
ProductOptionGroup
type ProductOptionGroup {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
code: String!
name: String!
options: [ProductOption!]!
translations: [ProductOptionGroupTranslation!]!
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!
prices: [ProductVariantPrice!]!
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
ProductVariantPrice
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
usageLimit: Int
name: String!
description: String!
enabled: Boolean!
conditions: [ConfigurableOperation!]!
actions: [ConfigurableOperation!]!
translations: [PromotionTranslation!]!
customFields: JSON
}
PromotionList
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
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
customFields: JSON
}
RefundAmountError
"""
Returned if
amount
is greater than the maximum un-refunded amount of the Payment"""
type RefundAmountError {
errorCode: ErrorCode!
message: String!
maximumRefundable: Int!
}
RefundLine
RefundOrderResult
union 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
requiresPermission: [Permission!]
entity: String!
scalarFields: [String!]!
ui: JSON
}
Release
type Release {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
productVariant: ProductVariant!
type: StockMovementType!
quantity: Int!
customFields: JSON
}
RemoveFacetFromChannelResult
union RemoveFacetFromChannelResult =
RemoveOptionGroupFromProductResult
union RemoveOptionGroupFromProductResult =
RemoveOrderItemsResult
union RemoveOrderItemsResult =
Return
type Return {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
productVariant: ProductVariant!
type: StockMovementType!
quantity: Int!
customFields: JSON
}
Role
type Role {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
code: String!
description: String!
permissions: [Permission!]!
channels: [Channel!]!
}
RoleList
Sale
type Sale {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
productVariant: ProductVariant!
type: StockMovementType!
quantity: Int!
customFields: JSON
}
SearchReindexResponse
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
price: SearchResultPrice!
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
SearchResultPrice
"""
The price of a search result product, either as a range or as a single price
"""
union SearchResultPrice =
Seller
SellerList
ServerConfig
type ServerConfig {
orderProcess: [OrderProcessState!]!
permittedAssetTypes: [String!]!
permissions: [PermissionDefinition!]!
moneyStrategyPrecision: Int!
"""
This field is deprecated in v2.2 in favor of the entityCustomFields field,
which allows custom fields to be defined on user-supplies entities.
"""
customFieldConfig: CustomFields!
entityCustomFields: [EntityCustomFields!]!
}
SetCustomerForDraftOrderResult
union SetCustomerForDraftOrderResult =
SetOrderShippingMethodResult
union SetOrderShippingMethodResult =
SettlePaymentError
"""
Returned if the Payment settlement fails
"""
type SettlePaymentError {
errorCode: ErrorCode!
message: String!
paymentErrorMessage: String!
}
SettlePaymentResult
union SettlePaymentResult =
SettleRefundResult
union SettleRefundResult =
ShippingLine
type ShippingLine {
id: ID!
shippingMethod: ShippingMethod!
price: Money!
priceWithTax: Money!
discountedPrice: Money!
discountedPriceWithTax: Money!
discounts: [Discount!]!
customFields: JSON
}
ShippingMethod
type ShippingMethod {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
languageCode: LanguageCode!
code: String!
name: String!
description: String!
fulfillmentHandlerCode: String!
checker: ConfigurableOperation!
calculator: ConfigurableOperation!
translations: [ShippingMethodTranslation!]!
customFields: JSON
}
ShippingMethodList
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
StockAdjustment
type StockAdjustment {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
productVariant: ProductVariant!
type: StockMovementType!
quantity: Int!
customFields: JSON
}
StockLevel
type StockLevel {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
stockLocationId: ID!
stockOnHand: Int!
stockAllocated: Int!
stockLocation: StockLocation!
customFields: JSON
}
StockLocation
type StockLocation {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
name: String!
description: String!
customFields: JSON
}
StockLocationList
StockMovementItem
union StockMovementItem =
StockMovementList
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
requiresPermission: [Permission!]
pattern: String
options: [StringFieldOption!]
ui: JSON
}
StringFieldOption
StringStructFieldConfig
type StringStructFieldConfig {
name: String!
type: String!
list: Boolean!
label: [LocalizedString!]
description: [LocalizedString!]
length: Int
pattern: String
options: [StringFieldOption!]
ui: JSON
}
StructCustomFieldConfig
type StructCustomFieldConfig {
name: String!
type: String!
list: Boolean!
fields: [StructFieldConfig!]!
label: [LocalizedString!]
description: [LocalizedString!]
readonly: Boolean
internal: Boolean
nullable: Boolean
requiresPermission: [Permission!]
ui: JSON
}
StructFieldConfig
union StructFieldConfig =
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
TagList
TaxCategory
type TaxCategory {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
name: String!
isDefault: Boolean!
customFields: JSON
}
TaxCategoryList
TaxLine
TaxRate
type TaxRate {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
name: String!
enabled: Boolean!
value: Float!
category: TaxCategory!
zone: Zone!
customerGroup: CustomerGroup
customFields: JSON
}
TaxRateList
TestShippingMethodQuote
TestShippingMethodResult
TextCustomFieldConfig
type TextCustomFieldConfig {
name: String!
type: String!
list: Boolean!
label: [LocalizedString!]
description: [LocalizedString!]
readonly: Boolean
internal: Boolean
nullable: Boolean
requiresPermission: [Permission!]
ui: JSON
}
TextStructFieldConfig
type TextStructFieldConfig {
name: String!
type: String!
list: Boolean!
label: [LocalizedString!]
description: [LocalizedString!]
ui: JSON
}
TransitionFulfillmentToStateResult
union TransitionFulfillmentToStateResult =
TransitionOrderToStateResult
union TransitionOrderToStateResult =
TransitionPaymentToStateResult
union TransitionPaymentToStateResult =
UpdateChannelResult
union UpdateChannelResult =
UpdateCustomerResult
union UpdateCustomerResult =
UpdateGlobalSettingsResult
union UpdateGlobalSettingsResult =
UpdateOrderItemsResult
union 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
}