Types
ActiveOrderResult
union ActiveOrderResult = Order | NoActiveOrderError
AddPaymentToOrderResult
union AddPaymentToOrderResult = Order | OrderPaymentStateError | IneligiblePaymentMethodError | PaymentFailedError | PaymentDeclinedError | OrderStateTransitionError | NoActiveOrderError
Address
Adjustment
- adjustmentSource: String!
- type: AdjustmentType!
- description: String!
- amount: Money!
- data: JSON
AlreadyLoggedInError
Returned when attempting to set the Customer for an Order when already logged in.
ApplyCouponCodeResult
union ApplyCouponCodeResult = Order | CouponCodeExpiredError | CouponCodeInvalidError | CouponCodeLimitError
Asset
AssetList
AuthenticationMethod
AuthenticationResult
union AuthenticationResult = CurrentUser | InvalidCredentialsError | NotVerifiedError
Boolean
The Boolean
scalar type represents true
or false
.
BooleanCustomFieldConfig
- name: String!
- type: String!
- list: Boolean!
- label: [LocalizedString!]
- description: [LocalizedString!]
- readonly: Boolean
- internal: Boolean
- nullable: Boolean
- ui: JSON
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
Collection
- 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
- items: [Collection!]!
- totalItems: Int!
CollectionResult
Which Collections are present in the products returned by the search, and in what quantity.
- collection: Collection!
- count: Int!
CollectionTranslation
ConfigArg
ConfigArgDefinition
ConfigurableOperation
ConfigurableOperationDefinition
- code: String!
- args: [ConfigArgDefinition!]!
- description: String!
Coordinate
Country
CountryList
CouponCodeExpiredError
Returned if the provided coupon code is invalid
CouponCodeInvalidError
Returned if the provided coupon code is invalid
CouponCodeLimitError
Returned if the provided coupon code is invalid
CurrentUser
- id: ID!
- identifier: String!
- channels: [CurrentUserChannel!]!
CurrentUserChannel
- id: ID!
- token: String!
- code: String!
- permissions: [Permission!]!
CustomFieldConfig
union CustomFieldConfig = StringCustomFieldConfig | LocaleStringCustomFieldConfig | IntCustomFieldConfig | FloatCustomFieldConfig | BooleanCustomFieldConfig | DateTimeCustomFieldConfig | RelationCustomFieldConfig | TextCustomFieldConfig | LocaleTextCustomFieldConfig
Customer
CustomerGroup
- id: ID!
- createdAt: DateTime!
- updatedAt: DateTime!
- name: String!
- customers(options: CustomerListOptions): CustomerList!
- customFields: JSON
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.
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
DeletionResponse
- result: DeletionResult!
- message: String
Discount
- adjustmentSource: String!
- type: AdjustmentType!
- description: String!
- amount: Money!
- amountWithTax: Money!
EmailAddressConflictError
Returned when attempting to create a Customer with an email address already registered to an existing User.
Facet
- id: ID!
- createdAt: DateTime!
- updatedAt: DateTime!
- languageCode: LanguageCode!
- name: String!
- code: String!
- values: [FacetValue!]!
- translations: [FacetTranslation!]!
- customFields: JSON
FacetList
FacetTranslation
- id: ID!
- createdAt: DateTime!
- updatedAt: DateTime!
- languageCode: LanguageCode!
- name: String!
FacetValue
- id: ID!
- createdAt: DateTime!
- updatedAt: DateTime!
- languageCode: LanguageCode!
- facet: Facet!
- name: String!
- code: String!
- translations: [FacetValueTranslation!]!
- customFields: JSON
FacetValueResult
Which FacetValues are present in the products returned by the search, and in what quantity.
- facetValue: FacetValue!
- count: Int!
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.
FloatCustomFieldConfig
Fulfillment
- id: ID!
- createdAt: DateTime!
- updatedAt: DateTime!
- lines: [FulfillmentLine!]!
- summary: [FulfillmentLine!]!
- state: String!
- method: String!
- trackingCode: String
- customFields: JSON
FulfillmentLine
- orderLine: OrderLine!
- orderLineId: ID!
- quantity: Int!
- fulfillment: Fulfillment!
- fulfillmentId: ID!
GuestCheckoutError
Returned when attempting to set the Customer on a guest checkout when the configured GuestCheckoutStrategy does not allow it.
HistoryEntry
- id: ID!
- createdAt: DateTime!
- updatedAt: DateTime!
- type: HistoryEntryType!
- data: JSON!
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.
IdentifierChangeTokenExpiredError
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.
IdentifierChangeTokenInvalidError
Returned if the token used to change a Customer’s email address is either invalid or does not match any expected tokens.
IneligiblePaymentMethodError
Returned when attempting to add a Payment using a PaymentMethod for which the Order is not eligible.
IneligibleShippingMethodError
Returned when attempting to set a ShippingMethod for which the Order is not eligible
InsufficientStockError
Returned when attempting to add more items to the Order than are available
Int
The Int
scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.
IntCustomFieldConfig
InvalidCredentialsError
Returned if the user authentication credentials are not valid
JSON
The JSON
scalar type represents JSON values as specified by ECMA-404.
LocaleStringCustomFieldConfig
LocaleTextCustomFieldConfig
- name: String!
- type: String!
- list: Boolean!
- label: [LocalizedString!]
- description: [LocalizedString!]
- readonly: Boolean
- internal: Boolean
- nullable: Boolean
- ui: JSON
LocalizedString
- languageCode: LanguageCode!
- value: String!
MissingPasswordError
Returned when attempting to register or verify a customer account without a password, when one is required.
Money
The Money
scalar type represents monetary values and supports signed double-precision fractional values as specified by IEEE 754.
NativeAuthStrategyError
Returned when attempting an operation that relies on the NativeAuthStrategy, if that strategy is not configured.
NativeAuthenticationResult
union NativeAuthenticationResult = CurrentUser | InvalidCredentialsError | NotVerifiedError | NativeAuthStrategyError
NegativeQuantityError
Returned when attempting to set a negative OrderLine quantity.
NoActiveOrderError
Returned when invoking a mutation which depends on there being an active Order on the current session.
NotVerifiedError
Returned if authOptions.requireVerification
is set to true
(which is the default)
and an unverified user attempts to authenticate.
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
OrderAddress
OrderLimitError
Returned when the maximum order size limit has been reached.
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
OrderModificationError
Returned when attempting to modify the contents of an Order that is not in the AddingItems
state.
OrderPaymentStateError
Returned when attempting to add a Payment to an Order that is not in the ArrangingPayment
state.
OrderStateTransitionError
Returned if there is an error in transitioning the Order state
OrderTaxSummary
A summary of the taxes being applied to this order, grouped by taxRate.
PasswordAlreadySetError
Returned when attempting to verify a customer account with a password, when a password has already been set.
PasswordResetTokenExpiredError
Returned if the token used to reset a Customer’s password is valid, but has
expired according to the verificationTokenDuration
setting in the AuthOptions.
PasswordResetTokenInvalidError
Returned if the token used to reset a Customer’s password is either invalid or does not match any expected tokens.
PasswordValidationError
Returned when attempting to register or verify a customer account where the given password fails password validation.
Payment
PaymentDeclinedError
Returned when a Payment is declined by the payment provider.
PaymentFailedError
Returned when a Payment fails due to an error.
PaymentMethod
- id: ID!
- createdAt: DateTime!
- updatedAt: DateTime!
- name: String!
- code: String!
- description: String!
- enabled: Boolean!
- checker: ConfigurableOperation
- handler: ConfigurableOperation!
- translations: [PaymentMethodTranslation!]!
- customFields: JSON
PaymentMethodQuote
PaymentMethodTranslation
PriceRange
The price range where the result has more than one price
Product
- 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
- variantList(options: ProductVariantListOptions): ProductVariantList!
- optionGroups: [ProductOptionGroup!]!
- facetValues: [FacetValue!]!
- translations: [ProductTranslation!]!
- collections: [Collection!]!
- customFields: JSON
ProductList
ProductOption
- id: ID!
- createdAt: DateTime!
- updatedAt: DateTime!
- languageCode: LanguageCode!
- code: String!
- name: String!
- groupId: ID!
- group: ProductOptionGroup!
- translations: [ProductOptionTranslation!]!
- customFields: JSON
ProductOptionGroup
- id: ID!
- createdAt: DateTime!
- updatedAt: DateTime!
- languageCode: LanguageCode!
- code: String!
- name: String!
- options: [ProductOption!]!
- translations: [ProductOptionGroupTranslation!]!
- customFields: JSON
ProductOptionGroupTranslation
- id: ID!
- createdAt: DateTime!
- updatedAt: DateTime!
- languageCode: LanguageCode!
- name: String!
ProductOptionTranslation
- id: ID!
- createdAt: DateTime!
- updatedAt: DateTime!
- languageCode: LanguageCode!
- name: String!
ProductTranslation
ProductVariant
- 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
- items: [ProductVariant!]!
- totalItems: Int!
ProductVariantTranslation
- id: ID!
- createdAt: DateTime!
- updatedAt: DateTime!
- languageCode: LanguageCode!
- name: String!
Promotion
- id: ID!
- createdAt: DateTime!
- updatedAt: DateTime!
- startsAt: DateTime
- endsAt: DateTime
- couponCode: String
- perCustomerUsageLimit: Int
- name: String!
- description: String!
- enabled: Boolean!
- conditions: [ConfigurableOperation!]!
- actions: [ConfigurableOperation!]!
- translations: [PromotionTranslation!]!
- customFields: JSON
PromotionList
PromotionTranslation
Province
ProvinceList
RefreshCustomerVerificationResult
union RefreshCustomerVerificationResult = Success | NativeAuthStrategyError
Refund
RefundLine
RegionTranslation
- id: ID!
- createdAt: DateTime!
- updatedAt: DateTime!
- languageCode: LanguageCode!
- name: String!
RegisterCustomerAccountResult
union RegisterCustomerAccountResult = Success | MissingPasswordError | PasswordValidationError | NativeAuthStrategyError
RelationCustomFieldConfig
RemoveOrderItemsResult
union RemoveOrderItemsResult = Order | OrderModificationError
RequestPasswordResetResult
union RequestPasswordResetResult = Success | NativeAuthStrategyError
RequestUpdateCustomerEmailAddressResult
union RequestUpdateCustomerEmailAddressResult = Success | InvalidCredentialsError | EmailAddressConflictError | NativeAuthStrategyError
ResetPasswordResult
union ResetPasswordResult = CurrentUser | PasswordResetTokenInvalidError | PasswordResetTokenExpiredError | PasswordValidationError | NativeAuthStrategyError | NotVerifiedError
Role
RoleList
SearchReindexResponse
- success: Boolean!
SearchResponse
- items: [SearchResult!]!
- totalItems: Int!
- facetValues: [FacetValueResult!]!
- collections: [CollectionResult!]!
SearchResult
- 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
- 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 = PriceRange | SinglePrice
Seller
SetCustomerForOrderResult
union SetCustomerForOrderResult = Order | AlreadyLoggedInError | EmailAddressConflictError | NoActiveOrderError | GuestCheckoutError
SetOrderShippingMethodResult
union SetOrderShippingMethodResult = Order | OrderModificationError | IneligibleShippingMethodError | NoActiveOrderError
ShippingLine
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
- items: [ShippingMethod!]!
- totalItems: Int!
ShippingMethodQuote
ShippingMethodTranslation
SinglePrice
The price value where the result has a single price
- value: Money!
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.
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
- value: String!
- label: [LocalizedString!]
Success
Indicates that an operation succeeded, where we do not want to return any more specific information.
- success: Boolean!
Surcharge
Tag
TagList
TaxCategory
TaxLine
TaxRate
- id: ID!
- createdAt: DateTime!
- updatedAt: DateTime!
- name: String!
- enabled: Boolean!
- value: Float!
- category: TaxCategory!
- zone: Zone!
- customerGroup: CustomerGroup
- customFields: JSON
TaxRateList
TextCustomFieldConfig
- name: String!
- type: String!
- list: Boolean!
- label: [LocalizedString!]
- description: [LocalizedString!]
- readonly: Boolean
- internal: Boolean
- nullable: Boolean
- ui: JSON
TransitionOrderToStateResult
union TransitionOrderToStateResult = Order | OrderStateTransitionError
UpdateCustomerEmailAddressResult
union UpdateCustomerEmailAddressResult = Success | IdentifierChangeTokenInvalidError | IdentifierChangeTokenExpiredError | NativeAuthStrategyError
UpdateCustomerPasswordResult
union UpdateCustomerPasswordResult = Success | InvalidCredentialsError | PasswordValidationError | NativeAuthStrategyError
UpdateOrderItemsResult
union UpdateOrderItemsResult = Order | OrderModificationError | OrderLimitError | NegativeQuantityError | InsufficientStockError
Upload
The Upload
scalar type represents a file upload.
User
VerificationTokenExpiredError
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.
VerificationTokenInvalidError
Returned if the verification token (used to verify a Customer’s email address) is either invalid or does not match any expected tokens.
VerifyCustomerAccountResult
union VerifyCustomerAccountResult = CurrentUser | VerificationTokenInvalidError | VerificationTokenExpiredError | MissingPasswordError | PasswordValidationError | PasswordAlreadySetError | NativeAuthStrategyError