saleor-dashboard/schema.graphql
Dawid Tarasiuk ee05b090b8 1862 - Add references field to attributes section (#923)
* Add references field to attributes section

* Update messagees and test shapshots

* Remove unused style in sortable chips component
2021-01-20 11:50:53 +01:00

5822 lines
141 KiB
GraphQL

schema {
query: Query
mutation: Mutation
}
type AccountAddressCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
user: User
accountErrors: [AccountError!]!
address: Address
}
type AccountAddressDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
user: User
accountErrors: [AccountError!]!
address: Address
}
type AccountAddressUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
user: User
accountErrors: [AccountError!]!
address: Address
}
type AccountDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
accountErrors: [AccountError!]!
user: User
}
type AccountError {
field: String
message: String
code: AccountErrorCode!
}
enum AccountErrorCode {
ACTIVATE_OWN_ACCOUNT
ACTIVATE_SUPERUSER_ACCOUNT
DUPLICATED_INPUT_ITEM
DEACTIVATE_OWN_ACCOUNT
DEACTIVATE_SUPERUSER_ACCOUNT
DELETE_NON_STAFF_USER
DELETE_OWN_ACCOUNT
DELETE_STAFF_ACCOUNT
DELETE_SUPERUSER_ACCOUNT
GRAPHQL_ERROR
INACTIVE
INVALID
INVALID_PASSWORD
LEFT_NOT_MANAGEABLE_PERMISSION
INVALID_CREDENTIALS
NOT_FOUND
OUT_OF_SCOPE_USER
OUT_OF_SCOPE_GROUP
OUT_OF_SCOPE_PERMISSION
PASSWORD_ENTIRELY_NUMERIC
PASSWORD_TOO_COMMON
PASSWORD_TOO_SHORT
PASSWORD_TOO_SIMILAR
REQUIRED
UNIQUE
JWT_SIGNATURE_EXPIRED
JWT_INVALID_TOKEN
JWT_DECODE_ERROR
JWT_MISSING_TOKEN
JWT_INVALID_CSRF_TOKEN
}
input AccountInput {
firstName: String
lastName: String
defaultBillingAddress: AddressInput
defaultShippingAddress: AddressInput
}
type AccountRegister {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
requiresConfirmation: Boolean
accountErrors: [AccountError!]!
user: User
}
input AccountRegisterInput {
email: String!
password: String!
redirectUrl: String
}
type AccountRequestDeletion {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
accountErrors: [AccountError!]!
}
type AccountSetDefaultAddress {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
user: User
accountErrors: [AccountError!]!
}
type AccountUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
accountErrors: [AccountError!]!
user: User
}
type Address implements Node {
id: ID!
firstName: String!
lastName: String!
companyName: String!
streetAddress1: String!
streetAddress2: String!
city: String!
cityArea: String!
postalCode: String!
country: CountryDisplay!
countryArea: String!
phone: String
isDefaultShippingAddress: Boolean
isDefaultBillingAddress: Boolean
}
type AddressCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
user: User
accountErrors: [AccountError!]!
address: Address
}
type AddressDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
user: User
accountErrors: [AccountError!]!
address: Address
}
input AddressInput {
firstName: String
lastName: String
companyName: String
streetAddress1: String
streetAddress2: String
city: String
cityArea: String
postalCode: String
country: CountryCode
countryArea: String
phone: String
}
type AddressSetDefault {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
user: User
accountErrors: [AccountError!]!
}
enum AddressTypeEnum {
BILLING
SHIPPING
}
type AddressUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
user: User
accountErrors: [AccountError!]!
address: Address
}
type AddressValidationData {
countryCode: String
countryName: String
addressFormat: String
addressLatinFormat: String
allowedFields: [String]
requiredFields: [String]
upperFields: [String]
countryAreaType: String
countryAreaChoices: [ChoiceValue]
cityType: String
cityChoices: [ChoiceValue]
cityAreaType: String
cityAreaChoices: [ChoiceValue]
postalCodeType: String
postalCodeMatchers: [String]
postalCodeExamples: [String]
postalCodePrefix: String
}
type Allocation implements Node {
id: ID!
quantity: Int!
warehouse: Warehouse!
}
type App implements Node & ObjectWithMetadata {
id: ID!
name: String
created: DateTime
isActive: Boolean
permissions: [Permission]
tokens: [AppToken]
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
type: AppTypeEnum
webhooks: [Webhook]
aboutApp: String
dataPrivacy: String
dataPrivacyUrl: String
homepageUrl: String
supportUrl: String
configurationUrl: String
appUrl: String
version: String
accessToken: String
}
type AppActivate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
appErrors: [AppError!]!
app: App
}
type AppCountableConnection {
pageInfo: PageInfo!
edges: [AppCountableEdge!]!
totalCount: Int
}
type AppCountableEdge {
node: App!
cursor: String!
}
type AppCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
authToken: String
appErrors: [AppError!]!
app: App
}
type AppDeactivate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
appErrors: [AppError!]!
app: App
}
type AppDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
appErrors: [AppError!]!
app: App
}
type AppDeleteFailedInstallation {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
appErrors: [AppError!]!
appInstallation: AppInstallation
}
type AppError {
field: String
message: String
code: AppErrorCode!
permissions: [PermissionEnum!]
}
enum AppErrorCode {
FORBIDDEN
GRAPHQL_ERROR
INVALID
INVALID_STATUS
INVALID_PERMISSION
INVALID_URL_FORMAT
INVALID_MANIFEST_FORMAT
MANIFEST_URL_CANT_CONNECT
NOT_FOUND
REQUIRED
UNIQUE
OUT_OF_SCOPE_APP
OUT_OF_SCOPE_PERMISSION
}
type AppFetchManifest {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
manifest: Manifest
appErrors: [AppError!]!
}
input AppFilterInput {
search: String
isActive: Boolean
type: AppTypeEnum
}
input AppInput {
name: String
isActive: Boolean
permissions: [PermissionEnum]
}
type AppInstall {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
appErrors: [AppError!]!
appInstallation: AppInstallation
}
input AppInstallInput {
appName: String
manifestUrl: String
activateAfterInstallation: Boolean = true
permissions: [PermissionEnum]
}
type AppInstallation implements Node & Job {
appName: String!
manifestUrl: String!
id: ID!
status: JobStatusEnum!
createdAt: DateTime!
updatedAt: DateTime!
message: String
}
type AppRetryInstall {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
appErrors: [AppError!]!
appInstallation: AppInstallation
}
enum AppSortField {
NAME
CREATION_DATE
}
input AppSortingInput {
direction: OrderDirection!
field: AppSortField!
}
type AppToken implements Node {
name: String
authToken: String
id: ID!
}
type AppTokenCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
authToken: String
appErrors: [AppError!]!
appToken: AppToken
}
type AppTokenDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
appErrors: [AppError!]!
appToken: AppToken
}
input AppTokenInput {
name: String
app: ID!
}
type AppTokenVerify {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
valid: Boolean!
appErrors: [AppError!]!
}
enum AppTypeEnum {
LOCAL
THIRDPARTY
}
type AppUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
appErrors: [AppError!]!
app: App
}
type AssignNavigation {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
menu: Menu
menuErrors: [MenuError!]!
}
type Attribute implements Node & ObjectWithMetadata {
id: ID!
productTypes(before: String, after: String, first: Int, last: Int): ProductTypeCountableConnection!
productVariantTypes(before: String, after: String, first: Int, last: Int): ProductTypeCountableConnection!
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
inputType: AttributeInputTypeEnum
entityType: AttributeEntityTypeEnum
name: String
slug: String
type: AttributeTypeEnum
values: [AttributeValue]
valueRequired: Boolean!
visibleInStorefront: Boolean!
filterableInStorefront: Boolean!
filterableInDashboard: Boolean!
availableInGrid: Boolean!
translation(languageCode: LanguageCodeEnum!): AttributeTranslation
storefrontSearchPosition: Int!
}
type AttributeBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
attributeErrors: [AttributeError!]!
}
type AttributeCountableConnection {
pageInfo: PageInfo!
edges: [AttributeCountableEdge!]!
totalCount: Int
}
type AttributeCountableEdge {
node: Attribute!
cursor: String!
}
type AttributeCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
attribute: Attribute
attributeErrors: [AttributeError!]!
}
input AttributeCreateInput {
inputType: AttributeInputTypeEnum
entityType: AttributeEntityTypeEnum
name: String!
slug: String
type: AttributeTypeEnum!
values: [AttributeValueCreateInput]
valueRequired: Boolean
isVariantOnly: Boolean
visibleInStorefront: Boolean
filterableInStorefront: Boolean
filterableInDashboard: Boolean
storefrontSearchPosition: Int
availableInGrid: Boolean
}
type AttributeDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
attributeErrors: [AttributeError!]!
attribute: Attribute
}
enum AttributeEntityTypeEnum {
PAGE
}
type AttributeError {
field: String
message: String
code: AttributeErrorCode!
}
enum AttributeErrorCode {
ALREADY_EXISTS
GRAPHQL_ERROR
INVALID
NOT_FOUND
REQUIRED
UNIQUE
}
input AttributeFilterInput {
valueRequired: Boolean
isVariantOnly: Boolean
visibleInStorefront: Boolean
filterableInStorefront: Boolean
filterableInDashboard: Boolean
availableInGrid: Boolean
search: String
ids: [ID]
type: AttributeTypeEnum
inCollection: ID
inCategory: ID
channel: String
}
input AttributeInput {
slug: String!
value: String
values: [String]
}
enum AttributeInputTypeEnum {
DROPDOWN
MULTISELECT
FILE
REFERENCE
}
type AttributeReorderValues {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
attribute: Attribute
attributeErrors: [AttributeError!]!
}
enum AttributeSortField {
NAME
SLUG
VALUE_REQUIRED
IS_VARIANT_ONLY
VISIBLE_IN_STOREFRONT
FILTERABLE_IN_STOREFRONT
FILTERABLE_IN_DASHBOARD
STOREFRONT_SEARCH_POSITION
AVAILABLE_IN_GRID
}
input AttributeSortingInput {
direction: OrderDirection!
field: AttributeSortField!
}
type AttributeTranslatableContent implements Node {
id: ID!
name: String!
translation(languageCode: LanguageCodeEnum!): AttributeTranslation
attribute: Attribute
}
type AttributeTranslate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
translationErrors: [TranslationError!]!
attribute: Attribute
}
type AttributeTranslation implements Node {
id: ID!
name: String!
language: LanguageDisplay!
}
enum AttributeTypeEnum {
PRODUCT_TYPE
PAGE_TYPE
}
type AttributeUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
attribute: Attribute
attributeErrors: [AttributeError!]!
}
input AttributeUpdateInput {
name: String
slug: String
removeValues: [ID]
addValues: [AttributeValueCreateInput]
valueRequired: Boolean
isVariantOnly: Boolean
visibleInStorefront: Boolean
filterableInStorefront: Boolean
filterableInDashboard: Boolean
storefrontSearchPosition: Int
availableInGrid: Boolean
}
type AttributeValue implements Node {
id: ID!
name: String
slug: String
type: AttributeValueType @deprecated(reason: "Use the `inputType` field to determine the type of attribute's value. This field will be removed after 2020-07-31.")
translation(languageCode: LanguageCodeEnum!): AttributeValueTranslation
inputType: AttributeInputTypeEnum
reference: ID
file: File
}
type AttributeValueBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
attributeErrors: [AttributeError!]!
}
type AttributeValueCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
attribute: Attribute
attributeErrors: [AttributeError!]!
attributeValue: AttributeValue
}
input AttributeValueCreateInput {
name: String!
}
type AttributeValueDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
attribute: Attribute
attributeErrors: [AttributeError!]!
attributeValue: AttributeValue
}
input AttributeValueInput {
id: ID
values: [String]
file: String
contentType: String
references: [ID!]
}
type AttributeValueTranslatableContent implements Node {
id: ID!
name: String!
translation(languageCode: LanguageCodeEnum!): AttributeValueTranslation
attributeValue: AttributeValue
}
type AttributeValueTranslate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
translationErrors: [TranslationError!]!
attributeValue: AttributeValue
}
type AttributeValueTranslation implements Node {
id: ID!
name: String!
language: LanguageDisplay!
}
enum AttributeValueType {
COLOR
GRADIENT
URL
STRING
}
type AttributeValueUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
attribute: Attribute
attributeErrors: [AttributeError!]!
attributeValue: AttributeValue
}
input BulkAttributeValueInput {
id: ID
values: [String]!
}
type BulkProductError {
field: String
message: String
code: ProductErrorCode!
attributes: [ID!]
values: [ID!]
index: Int
warehouses: [ID!]
channels: [ID!]
}
type BulkStockError {
field: String
message: String
code: ProductErrorCode!
attributes: [ID!]
values: [ID!]
index: Int
}
input CatalogueInput {
products: [ID]
categories: [ID]
collections: [ID]
}
type Category implements Node & ObjectWithMetadata {
seoTitle: String
seoDescription: String
id: ID!
name: String!
description: String!
descriptionJson: JSONString!
slug: String!
parent: Category
level: Int!
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
ancestors(before: String, after: String, first: Int, last: Int): CategoryCountableConnection
products(channel: String, before: String, after: String, first: Int, last: Int): ProductCountableConnection
url: String @deprecated(reason: "This field will be removed after 2020-07-31.")
children(before: String, after: String, first: Int, last: Int): CategoryCountableConnection
backgroundImage(size: Int): Image
translation(languageCode: LanguageCodeEnum!): CategoryTranslation
}
type CategoryBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
productErrors: [ProductError!]!
}
type CategoryCountableConnection {
pageInfo: PageInfo!
edges: [CategoryCountableEdge!]!
totalCount: Int
}
type CategoryCountableEdge {
node: Category!
cursor: String!
}
type CategoryCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
category: Category
}
type CategoryDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
category: Category
}
input CategoryFilterInput {
search: String
ids: [ID]
}
input CategoryInput {
description: String
descriptionJson: JSONString
name: String
slug: String
seo: SeoInput
backgroundImage: Upload
backgroundImageAlt: String
}
enum CategorySortField {
NAME
PRODUCT_COUNT
SUBCATEGORY_COUNT
}
input CategorySortingInput {
direction: OrderDirection!
channel: String
field: CategorySortField!
}
type CategoryTranslatableContent implements Node {
seoTitle: String
seoDescription: String
id: ID!
name: String!
description: String!
descriptionJson: JSONString!
translation(languageCode: LanguageCodeEnum!): CategoryTranslation
category: Category
}
type CategoryTranslate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
translationErrors: [TranslationError!]!
category: Category
}
type CategoryTranslation implements Node {
seoTitle: String
seoDescription: String
id: ID!
name: String!
description: String!
descriptionJson: JSONString!
language: LanguageDisplay!
}
type CategoryUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
category: Category
}
type Channel implements Node {
id: ID!
name: String!
isActive: Boolean!
slug: String!
currencyCode: String!
hasOrders: Boolean!
}
type ChannelActivate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
channel: Channel
channelErrors: [ChannelError!]!
}
type ChannelCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
channelErrors: [ChannelError!]!
channel: Channel
}
input ChannelCreateInput {
isActive: Boolean
name: String!
slug: String!
currencyCode: String!
}
type ChannelDeactivate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
channel: Channel
channelErrors: [ChannelError!]!
}
type ChannelDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
channelErrors: [ChannelError!]!
channel: Channel
}
input ChannelDeleteInput {
targetChannel: ID!
}
type ChannelError {
field: String
message: String
code: ChannelErrorCode!
}
enum ChannelErrorCode {
ALREADY_EXISTS
GRAPHQL_ERROR
INVALID
NOT_FOUND
REQUIRED
UNIQUE
CHANNEL_TARGET_ID_MUST_BE_DIFFERENT
CHANNELS_CURRENCY_MUST_BE_THE_SAME
CHANNEL_WITH_ORDERS
}
type ChannelUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
channelErrors: [ChannelError!]!
channel: Channel
}
input ChannelUpdateInput {
isActive: Boolean
name: String
slug: String
}
type Checkout implements Node & ObjectWithMetadata {
created: DateTime!
lastChange: DateTime!
user: User
quantity: Int!
channel: Channel!
billingAddress: Address
shippingAddress: Address
note: String!
discount: Money
discountName: String
translatedDiscountName: String
voucherCode: String
giftCards: [GiftCard]
id: ID!
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
availableShippingMethods: [ShippingMethod]!
availablePaymentGateways: [PaymentGateway!]!
email: String!
isShippingRequired: Boolean!
lines: [CheckoutLine]
shippingPrice: TaxedMoney
shippingMethod: ShippingMethod
subtotalPrice: TaxedMoney
token: UUID!
totalPrice: TaxedMoney
}
type CheckoutAddPromoCode {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
checkout: Checkout
checkoutErrors: [CheckoutError!]!
}
type CheckoutBillingAddressUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
checkout: Checkout
checkoutErrors: [CheckoutError!]!
}
type CheckoutComplete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
order: Order
confirmationNeeded: Boolean!
confirmationData: JSONString
checkoutErrors: [CheckoutError!]!
}
type CheckoutCountableConnection {
pageInfo: PageInfo!
edges: [CheckoutCountableEdge!]!
totalCount: Int
}
type CheckoutCountableEdge {
node: Checkout!
cursor: String!
}
type CheckoutCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
created: Boolean
checkoutErrors: [CheckoutError!]!
checkout: Checkout
}
input CheckoutCreateInput {
channel: String
lines: [CheckoutLineInput]!
email: String
shippingAddress: AddressInput
billingAddress: AddressInput
}
type CheckoutCustomerAttach {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
checkout: Checkout
checkoutErrors: [CheckoutError!]!
}
type CheckoutCustomerDetach {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
checkout: Checkout
checkoutErrors: [CheckoutError!]!
}
type CheckoutEmailUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
checkout: Checkout
checkoutErrors: [CheckoutError!]!
}
type CheckoutError {
field: String
message: String
code: CheckoutErrorCode!
variants: [ID!]
}
enum CheckoutErrorCode {
BILLING_ADDRESS_NOT_SET
CHECKOUT_NOT_FULLY_PAID
GRAPHQL_ERROR
PRODUCT_NOT_PUBLISHED
PRODUCT_UNAVAILABLE_FOR_PURCHASE
INSUFFICIENT_STOCK
INVALID
INVALID_SHIPPING_METHOD
NOT_FOUND
PAYMENT_ERROR
QUANTITY_GREATER_THAN_LIMIT
REQUIRED
SHIPPING_ADDRESS_NOT_SET
SHIPPING_METHOD_NOT_APPLICABLE
SHIPPING_METHOD_NOT_SET
SHIPPING_NOT_REQUIRED
TAX_ERROR
UNIQUE
VOUCHER_NOT_APPLICABLE
ZERO_QUANTITY
MISSING_CHANNEL_SLUG
CHANNEL_INACTIVE
}
type CheckoutLine implements Node {
id: ID!
variant: ProductVariant!
quantity: Int!
totalPrice: TaxedMoney
requiresShipping: Boolean
}
type CheckoutLineCountableConnection {
pageInfo: PageInfo!
edges: [CheckoutLineCountableEdge!]!
totalCount: Int
}
type CheckoutLineCountableEdge {
node: CheckoutLine!
cursor: String!
}
type CheckoutLineDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
checkout: Checkout
checkoutErrors: [CheckoutError!]!
}
input CheckoutLineInput {
quantity: Int!
variantId: ID!
}
type CheckoutLinesAdd {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
checkout: Checkout
checkoutErrors: [CheckoutError!]!
}
type CheckoutLinesUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
checkout: Checkout
checkoutErrors: [CheckoutError!]!
}
type CheckoutPaymentCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
checkout: Checkout
payment: Payment
paymentErrors: [PaymentError!]!
}
type CheckoutRemovePromoCode {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
checkout: Checkout
checkoutErrors: [CheckoutError!]!
}
type CheckoutShippingAddressUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
checkout: Checkout
checkoutErrors: [CheckoutError!]!
}
type CheckoutShippingMethodUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
checkout: Checkout
checkoutErrors: [CheckoutError!]!
}
type ChoiceValue {
raw: String
verbose: String
}
type Collection implements Node & ObjectWithMetadata {
seoTitle: String
seoDescription: String
id: ID!
name: String!
description: String!
descriptionJson: JSONString!
slug: String!
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
products(filter: ProductFilterInput, sortBy: ProductOrder, before: String, after: String, first: Int, last: Int): ProductCountableConnection
backgroundImage(size: Int): Image
translation(languageCode: LanguageCodeEnum!): CollectionTranslation
channelListings: [CollectionChannelListing!]
}
type CollectionAddProducts {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
collection: Collection
collectionErrors: [CollectionError!]!
}
type CollectionBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
productErrors: [ProductError!]!
}
type CollectionChannelListing implements Node {
publicationDate: Date
isPublished: Boolean!
id: ID!
channel: Channel!
}
type CollectionChannelListingError {
field: String
message: String
code: ProductErrorCode!
attributes: [ID!]
values: [ID!]
channels: [ID!]
}
type CollectionChannelListingUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
collection: Collection
collectionChannelListingErrors: [CollectionChannelListingError!]!
}
input CollectionChannelListingUpdateInput {
addChannels: [PublishableChannelListingInput!]
removeChannels: [ID!]
}
type CollectionCountableConnection {
pageInfo: PageInfo!
edges: [CollectionCountableEdge!]!
totalCount: Int
}
type CollectionCountableEdge {
node: Collection!
cursor: String!
}
type CollectionCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
collectionErrors: [CollectionError!]!
collection: Collection
}
input CollectionCreateInput {
isPublished: Boolean
name: String
slug: String
description: String
descriptionJson: JSONString
backgroundImage: Upload
backgroundImageAlt: String
seo: SeoInput
publicationDate: Date
products: [ID]
}
type CollectionDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
collectionErrors: [CollectionError!]!
collection: Collection
}
type CollectionError {
field: String
message: String
products: [ID!]
code: CollectionErrorCode!
}
enum CollectionErrorCode {
DUPLICATED_INPUT_ITEM
GRAPHQL_ERROR
INVALID
NOT_FOUND
REQUIRED
UNIQUE
CANNOT_MANAGE_PRODUCT_WITHOUT_VARIANT
}
input CollectionFilterInput {
published: CollectionPublished
search: String
ids: [ID]
channel: String
}
input CollectionInput {
isPublished: Boolean
name: String
slug: String
description: String
descriptionJson: JSONString
backgroundImage: Upload
backgroundImageAlt: String
seo: SeoInput
publicationDate: Date
}
enum CollectionPublished {
PUBLISHED
HIDDEN
}
type CollectionRemoveProducts {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
collection: Collection
collectionErrors: [CollectionError!]!
}
type CollectionReorderProducts {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
collection: Collection
collectionErrors: [CollectionError!]!
}
enum CollectionSortField {
NAME
AVAILABILITY
PRODUCT_COUNT
PUBLICATION_DATE
}
input CollectionSortingInput {
direction: OrderDirection!
channel: String
field: CollectionSortField!
}
type CollectionTranslatableContent implements Node {
seoTitle: String
seoDescription: String
id: ID!
name: String!
description: String!
descriptionJson: JSONString!
translation(languageCode: LanguageCodeEnum!): CollectionTranslation
collection: Collection
}
type CollectionTranslate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
translationErrors: [TranslationError!]!
collection: Collection
}
type CollectionTranslation implements Node {
seoTitle: String
seoDescription: String
id: ID!
name: String!
description: String!
descriptionJson: JSONString!
language: LanguageDisplay!
}
type CollectionUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
collectionErrors: [CollectionError!]!
collection: Collection
}
type ConfigurationItem {
name: String!
value: String
type: ConfigurationTypeFieldEnum
helpText: String
label: String
}
input ConfigurationItemInput {
name: String!
value: String
}
enum ConfigurationTypeFieldEnum {
STRING
BOOLEAN
SECRET
PASSWORD
SECRETMULTILINE
}
type ConfirmAccount {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
user: User
accountErrors: [AccountError!]!
}
type ConfirmEmailChange {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
user: User
accountErrors: [AccountError!]!
}
enum CountryCode {
AF
AX
AL
DZ
AS
AD
AO
AI
AQ
AG
AR
AM
AW
AU
AT
AZ
BS
BH
BD
BB
BY
BE
BZ
BJ
BM
BT
BO
BQ
BA
BW
BV
BR
IO
BN
BG
BF
BI
CV
KH
CM
CA
KY
CF
TD
CL
CN
CX
CC
CO
KM
CG
CD
CK
CR
CI
HR
CU
CW
CY
CZ
DK
DJ
DM
DO
EC
EG
SV
GQ
ER
EE
SZ
ET
EU
FK
FO
FJ
FI
FR
GF
PF
TF
GA
GM
GE
DE
GH
GI
GR
GL
GD
GP
GU
GT
GG
GN
GW
GY
HT
HM
VA
HN
HK
HU
IS
IN
ID
IR
IQ
IE
IM
IL
IT
JM
JP
JE
JO
KZ
KE
KI
KW
KG
LA
LV
LB
LS
LR
LY
LI
LT
LU
MO
MG
MW
MY
MV
ML
MT
MH
MQ
MR
MU
YT
MX
FM
MD
MC
MN
ME
MS
MA
MZ
MM
NA
NR
NP
NL
NC
NZ
NI
NE
NG
NU
NF
KP
MK
MP
NO
OM
PK
PW
PS
PA
PG
PY
PE
PH
PN
PL
PT
PR
QA
RE
RO
RU
RW
BL
SH
KN
LC
MF
PM
VC
WS
SM
ST
SA
SN
RS
SC
SL
SG
SX
SK
SI
SB
SO
ZA
GS
KR
SS
ES
LK
SD
SR
SJ
SE
CH
SY
TW
TJ
TZ
TH
TL
TG
TK
TO
TT
TN
TR
TM
TC
TV
UG
UA
AE
GB
UM
US
UY
UZ
VU
VE
VN
VG
VI
WF
EH
YE
ZM
ZW
}
type CountryDisplay {
code: String!
country: String!
vat: VAT
}
type CreateToken {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
token: String
refreshToken: String
csrfToken: String
user: User
accountErrors: [AccountError!]!
}
type CreditCard {
brand: String!
firstDigits: String
lastDigits: String!
expMonth: Int
expYear: Int
}
type CustomerBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
accountErrors: [AccountError!]!
}
type CustomerCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
accountErrors: [AccountError!]!
user: User
}
type CustomerDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
accountErrors: [AccountError!]!
user: User
}
type CustomerEvent implements Node {
id: ID!
date: DateTime
type: CustomerEventsEnum
user: User
message: String
count: Int
order: Order
orderLine: OrderLine
}
enum CustomerEventsEnum {
ACCOUNT_CREATED
PASSWORD_RESET_LINK_SENT
PASSWORD_RESET
EMAIL_CHANGED_REQUEST
PASSWORD_CHANGED
EMAIL_CHANGED
PLACED_ORDER
NOTE_ADDED_TO_ORDER
DIGITAL_LINK_DOWNLOADED
CUSTOMER_DELETED
NAME_ASSIGNED
EMAIL_ASSIGNED
NOTE_ADDED
}
input CustomerFilterInput {
dateJoined: DateRangeInput
numberOfOrders: IntRangeInput
placedOrders: DateRangeInput
search: String
}
input CustomerInput {
defaultBillingAddress: AddressInput
defaultShippingAddress: AddressInput
firstName: String
lastName: String
email: String
isActive: Boolean
note: String
}
type CustomerUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
accountErrors: [AccountError!]!
user: User
}
scalar Date
input DateRangeInput {
gte: Date
lte: Date
}
scalar DateTime
input DateTimeRangeInput {
gte: DateTime
lte: DateTime
}
type DeactivateAllUserTokens {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
accountErrors: [AccountError!]!
}
type DeleteMetadata {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
metadataErrors: [MetadataError!]!
item: ObjectWithMetadata
}
type DeletePrivateMetadata {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
metadataErrors: [MetadataError!]!
item: ObjectWithMetadata
}
type DigitalContent implements Node & ObjectWithMetadata {
useDefaultSettings: Boolean!
automaticFulfillment: Boolean!
productVariant: ProductVariant!
contentFile: String!
maxDownloads: Int
urlValidDays: Int
urls: [DigitalContentUrl]
id: ID!
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
}
type DigitalContentCountableConnection {
pageInfo: PageInfo!
edges: [DigitalContentCountableEdge!]!
totalCount: Int
}
type DigitalContentCountableEdge {
node: DigitalContent!
cursor: String!
}
type DigitalContentCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
variant: ProductVariant
content: DigitalContent
productErrors: [ProductError!]!
}
type DigitalContentDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
variant: ProductVariant
productErrors: [ProductError!]!
}
input DigitalContentInput {
useDefaultSettings: Boolean!
maxDownloads: Int
urlValidDays: Int
automaticFulfillment: Boolean
}
type DigitalContentUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
variant: ProductVariant
content: DigitalContent
productErrors: [ProductError!]!
}
input DigitalContentUploadInput {
useDefaultSettings: Boolean!
maxDownloads: Int
urlValidDays: Int
automaticFulfillment: Boolean
contentFile: Upload!
}
type DigitalContentUrl implements Node {
content: DigitalContent!
created: DateTime!
downloadNum: Int!
id: ID!
url: String
token: UUID!
}
type DigitalContentUrlCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
digitalContentUrl: DigitalContentUrl
}
input DigitalContentUrlCreateInput {
content: ID!
}
type DiscountError {
field: String
message: String
products: [ID!]
code: DiscountErrorCode!
channels: [ID!]
}
enum DiscountErrorCode {
ALREADY_EXISTS
GRAPHQL_ERROR
INVALID
NOT_FOUND
REQUIRED
UNIQUE
CANNOT_MANAGE_PRODUCT_WITHOUT_VARIANT
DUPLICATED_INPUT_ITEM
}
enum DiscountStatusEnum {
ACTIVE
EXPIRED
SCHEDULED
}
enum DiscountValueTypeEnum {
FIXED
PERCENTAGE
}
type Domain {
host: String!
sslEnabled: Boolean!
url: String!
}
type DraftOrderBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
orderErrors: [OrderError!]!
}
type DraftOrderComplete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
order: Order
orderErrors: [OrderError!]!
}
type DraftOrderCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
orderErrors: [OrderError!]!
order: Order
}
input DraftOrderCreateInput {
billingAddress: AddressInput
user: ID
userEmail: String
discount: PositiveDecimal
shippingAddress: AddressInput
shippingMethod: ID
voucher: ID
customerNote: String
channel: ID
redirectUrl: String
lines: [OrderLineCreateInput]
}
type DraftOrderDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
orderErrors: [OrderError!]!
order: Order
}
input DraftOrderInput {
billingAddress: AddressInput
user: ID
userEmail: String
discount: PositiveDecimal
shippingAddress: AddressInput
shippingMethod: ID
voucher: ID
customerNote: String
channel: ID
redirectUrl: String
}
type DraftOrderLineDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
order: Order
orderLine: OrderLine
orderErrors: [OrderError!]!
}
type DraftOrderLineUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
order: Order
orderErrors: [OrderError!]!
orderLine: OrderLine
}
type DraftOrderLinesBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
orderErrors: [OrderError!]!
}
type DraftOrderLinesCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
order: Order
orderLines: [OrderLine!]
orderErrors: [OrderError!]!
}
type DraftOrderUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
orderErrors: [OrderError!]!
order: Order
}
type Error {
field: String
message: String
}
type ExportError {
field: String
message: String
code: ExportErrorCode!
}
enum ExportErrorCode {
INVALID
NOT_FOUND
REQUIRED
}
type ExportEvent implements Node {
id: ID!
date: DateTime!
type: ExportEventsEnum!
user: User
app: App
message: String!
}
enum ExportEventsEnum {
EXPORT_PENDING
EXPORT_SUCCESS
EXPORT_FAILED
EXPORT_DELETED
EXPORTED_FILE_SENT
EXPORT_FAILED_INFO_SENT
}
type ExportFile implements Node & Job {
id: ID!
user: User
app: App
status: JobStatusEnum!
createdAt: DateTime!
updatedAt: DateTime!
message: String
url: String
events: [ExportEvent!]
}
type ExportFileCountableConnection {
pageInfo: PageInfo!
edges: [ExportFileCountableEdge!]!
totalCount: Int
}
type ExportFileCountableEdge {
node: ExportFile!
cursor: String!
}
input ExportFileFilterInput {
createdAt: DateTimeRangeInput
updatedAt: DateTimeRangeInput
status: JobStatusEnum
user: String
app: String
}
enum ExportFileSortField {
STATUS
CREATED_AT
UPDATED_AT
}
input ExportFileSortingInput {
direction: OrderDirection!
field: ExportFileSortField!
}
input ExportInfoInput {
attributes: [ID!]
warehouses: [ID!]
channels: [ID!]
fields: [ProductFieldEnum!]
}
type ExportProducts {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
exportFile: ExportFile
exportErrors: [ExportError!]!
}
input ExportProductsInput {
scope: ExportScope!
filter: ProductFilterInput
ids: [ID!]
exportInfo: ExportInfoInput
fileType: FileTypesEnum!
}
enum ExportScope {
ALL
IDS
FILTER
}
type File {
url: String!
contentType: String
}
enum FileTypesEnum {
CSV
XLSX
}
type FileUpload {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
uploadedFile: File
uploadErrors: [UploadError!]!
}
type Fulfillment implements Node & ObjectWithMetadata {
id: ID!
fulfillmentOrder: Int!
status: FulfillmentStatus!
trackingNumber: String!
created: DateTime!
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
lines: [FulfillmentLine]
statusDisplay: String
warehouse: Warehouse
}
type FulfillmentCancel {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
fulfillment: Fulfillment
order: Order
orderErrors: [OrderError!]!
}
input FulfillmentCancelInput {
warehouseId: ID!
}
type FulfillmentLine implements Node {
id: ID!
quantity: Int!
orderLine: OrderLine
}
type FulfillmentRefundProducts {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
fulfillment: Fulfillment
order: Order
orderErrors: [OrderError!]!
}
enum FulfillmentStatus {
FULFILLED
REFUNDED
CANCELED
}
type FulfillmentUpdateTracking {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
fulfillment: Fulfillment
order: Order
orderErrors: [OrderError!]!
}
input FulfillmentUpdateTrackingInput {
trackingNumber: String
notifyCustomer: Boolean = false
}
type GatewayConfigLine {
field: String!
value: String
}
scalar GenericScalar
type Geolocalization {
country: CountryDisplay
}
type GiftCard implements Node {
code: String
user: User
created: DateTime!
startDate: Date!
endDate: Date
lastUsedOn: DateTime
isActive: Boolean!
initialBalance: Money
currentBalance: Money
id: ID!
displayCode: String
}
type GiftCardActivate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
giftCard: GiftCard
giftCardErrors: [GiftCardError!]!
}
type GiftCardCountableConnection {
pageInfo: PageInfo!
edges: [GiftCardCountableEdge!]!
totalCount: Int
}
type GiftCardCountableEdge {
node: GiftCard!
cursor: String!
}
type GiftCardCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
giftCardErrors: [GiftCardError!]!
giftCard: GiftCard
}
input GiftCardCreateInput {
startDate: Date
endDate: Date
balance: PositiveDecimal
userEmail: String
code: String
}
type GiftCardDeactivate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
giftCard: GiftCard
giftCardErrors: [GiftCardError!]!
}
type GiftCardError {
field: String
message: String
code: GiftCardErrorCode!
}
enum GiftCardErrorCode {
ALREADY_EXISTS
GRAPHQL_ERROR
INVALID
NOT_FOUND
REQUIRED
UNIQUE
}
type GiftCardUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
giftCardErrors: [GiftCardError!]!
giftCard: GiftCard
}
input GiftCardUpdateInput {
startDate: Date
endDate: Date
balance: PositiveDecimal
userEmail: String
}
type Group implements Node {
id: ID!
name: String!
permissions: [Permission]
users: [User]
userCanManage: Boolean!
}
type GroupCountableConnection {
pageInfo: PageInfo!
edges: [GroupCountableEdge!]!
totalCount: Int
}
type GroupCountableEdge {
node: Group!
cursor: String!
}
type Image {
url: String!
alt: String
}
input IntRangeInput {
gte: Int
lte: Int
}
type Invoice implements ObjectWithMetadata & Job & Node {
id: ID!
metadata: [MetadataItem]!
status: JobStatusEnum!
number: String
externalUrl: String
privateMetadata: [MetadataItem]!
createdAt: DateTime!
updatedAt: DateTime!
message: String
url: String
}
type InvoiceCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
invoiceErrors: [InvoiceError!]!
invoice: Invoice
}
input InvoiceCreateInput {
number: String!
url: String!
}
type InvoiceDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
invoiceErrors: [InvoiceError!]!
invoice: Invoice
}
type InvoiceError {
field: String
message: String
code: InvoiceErrorCode!
}
enum InvoiceErrorCode {
REQUIRED
NOT_READY
URL_NOT_SET
EMAIL_NOT_SET
NUMBER_NOT_SET
NOT_FOUND
INVALID_STATUS
}
type InvoiceRequest {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
order: Order
invoiceErrors: [InvoiceError!]!
invoice: Invoice
}
type InvoiceRequestDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
invoiceErrors: [InvoiceError!]!
invoice: Invoice
}
type InvoiceSendEmail {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
invoiceErrors: [InvoiceError!]!
invoice: Invoice
}
type InvoiceUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
invoiceErrors: [InvoiceError!]!
invoice: Invoice
}
scalar JSONString
interface Job {
status: JobStatusEnum!
createdAt: DateTime!
updatedAt: DateTime!
message: String
}
enum JobStatusEnum {
PENDING
SUCCESS
FAILED
DELETED
}
enum LanguageCodeEnum {
AR
AZ
BG
BN
CA
CS
DA
DE
EL
EN
ES
ES_CO
ET
FA
FI
FR
HI
HU
HY
ID
IS
IT
JA
KA
KM
KO
LT
MN
MY
NB
NL
PL
PT
PT_BR
RO
RU
SK
SL
SQ
SR
SV
SW
TA
TH
TR
UK
VI
ZH_HANS
ZH_HANT
}
type LanguageDisplay {
code: LanguageCodeEnum!
language: String!
}
type Manifest {
identifier: String!
version: String!
name: String!
about: String
permissions: [Permission]
appUrl: String
configurationUrl: String
tokenTargetUrl: String
dataPrivacy: String
dataPrivacyUrl: String
homepageUrl: String
supportUrl: String
}
type Margin {
start: Int
stop: Int
}
type Menu implements Node {
id: ID!
name: String!
slug: String!
items: [MenuItem]
}
type MenuBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
menuErrors: [MenuError!]!
}
type MenuCountableConnection {
pageInfo: PageInfo!
edges: [MenuCountableEdge!]!
totalCount: Int
}
type MenuCountableEdge {
node: Menu!
cursor: String!
}
type MenuCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
menuErrors: [MenuError!]!
menu: Menu
}
input MenuCreateInput {
name: String!
slug: String
items: [MenuItemInput]
}
type MenuDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
menuErrors: [MenuError!]!
menu: Menu
}
type MenuError {
field: String
message: String
code: MenuErrorCode!
}
enum MenuErrorCode {
CANNOT_ASSIGN_NODE
GRAPHQL_ERROR
INVALID
INVALID_MENU_ITEM
NO_MENU_ITEM_PROVIDED
NOT_FOUND
REQUIRED
TOO_MANY_MENU_ITEMS
UNIQUE
}
input MenuFilterInput {
search: String
slug: [String]
}
input MenuInput {
name: String
slug: String
}
type MenuItem implements Node {
id: ID!
name: String!
menu: Menu!
parent: MenuItem
category: Category
collection: Collection
page: Page
level: Int!
children: [MenuItem]
url: String
translation(languageCode: LanguageCodeEnum!): MenuItemTranslation
}
type MenuItemBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
menuErrors: [MenuError!]!
}
type MenuItemCountableConnection {
pageInfo: PageInfo!
edges: [MenuItemCountableEdge!]!
totalCount: Int
}
type MenuItemCountableEdge {
node: MenuItem!
cursor: String!
}
type MenuItemCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
menuErrors: [MenuError!]!
menuItem: MenuItem
}
input MenuItemCreateInput {
name: String!
url: String
category: ID
collection: ID
page: ID
menu: ID!
parent: ID
}
type MenuItemDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
menuErrors: [MenuError!]!
menuItem: MenuItem
}
input MenuItemFilterInput {
search: String
}
input MenuItemInput {
name: String
url: String
category: ID
collection: ID
page: ID
}
type MenuItemMove {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
menu: Menu
menuErrors: [MenuError!]!
}
input MenuItemMoveInput {
itemId: ID!
parentId: ID
sortOrder: Int
}
input MenuItemSortingInput {
direction: OrderDirection!
field: MenuItemsSortField!
}
type MenuItemTranslatableContent implements Node {
id: ID!
name: String!
translation(languageCode: LanguageCodeEnum!): MenuItemTranslation
menuItem: MenuItem
}
type MenuItemTranslate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
translationErrors: [TranslationError!]!
menuItem: MenuItem
}
type MenuItemTranslation implements Node {
id: ID!
name: String!
language: LanguageDisplay!
}
type MenuItemUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
menuErrors: [MenuError!]!
menuItem: MenuItem
}
enum MenuItemsSortField {
NAME
}
enum MenuSortField {
NAME
ITEMS_COUNT
}
input MenuSortingInput {
direction: OrderDirection!
field: MenuSortField!
}
type MenuUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
menuErrors: [MenuError!]!
menu: Menu
}
type MetadataError {
field: String
message: String
code: MetadataErrorCode!
}
enum MetadataErrorCode {
GRAPHQL_ERROR
INVALID
NOT_FOUND
REQUIRED
}
input MetadataInput {
key: String!
value: String!
}
type MetadataItem {
key: String!
value: String!
}
type Money {
currency: String!
amount: Float!
localized: String! @deprecated(reason: "Price formatting according to the current locale should be handled by the frontend client. This field will be removed after 2020-07-31.")
}
type MoneyRange {
start: Money
stop: Money
}
input MoveProductInput {
productId: ID!
sortOrder: Int
}
type Mutation {
webhookCreate(input: WebhookCreateInput!): WebhookCreate
webhookDelete(id: ID!): WebhookDelete
webhookUpdate(id: ID!, input: WebhookUpdateInput!): WebhookUpdate
createWarehouse(input: WarehouseCreateInput!): WarehouseCreate
updateWarehouse(id: ID!, input: WarehouseUpdateInput!): WarehouseUpdate
deleteWarehouse(id: ID!): WarehouseDelete
assignWarehouseShippingZone(id: ID!, shippingZoneIds: [ID!]!): WarehouseShippingZoneAssign
unassignWarehouseShippingZone(id: ID!, shippingZoneIds: [ID!]!): WarehouseShippingZoneUnassign
staffNotificationRecipientCreate(input: StaffNotificationRecipientInput!): StaffNotificationRecipientCreate
staffNotificationRecipientUpdate(id: ID!, input: StaffNotificationRecipientInput!): StaffNotificationRecipientUpdate
staffNotificationRecipientDelete(id: ID!): StaffNotificationRecipientDelete
shopDomainUpdate(input: SiteDomainInput): ShopDomainUpdate
shopSettingsUpdate(input: ShopSettingsInput!): ShopSettingsUpdate
shopFetchTaxRates: ShopFetchTaxRates
shopSettingsTranslate(input: ShopSettingsTranslationInput!, languageCode: LanguageCodeEnum!): ShopSettingsTranslate
shopAddressUpdate(input: AddressInput): ShopAddressUpdate
orderSettingsUpdate(input: OrderSettingsUpdateInput!): OrderSettingsUpdate
shippingMethodChannelListingUpdate(id: ID!, input: ShippingMethodChannelListingInput!): ShippingMethodChannelListingUpdate
shippingMethodZipCodeRulesCreate(input: ShippingZipCodeRulesCreateInput!, shippingMethodId: ID!): ShippingZipCodeRulesCreate
shippingMethodZipCodeRulesDelete(id: ID!): ShippingZipCodeRulesDelete
shippingPriceCreate(input: ShippingPriceInput!): ShippingPriceCreate
shippingPriceDelete(id: ID!): ShippingPriceDelete
shippingPriceBulkDelete(ids: [ID]!): ShippingPriceBulkDelete
shippingPriceUpdate(id: ID!, input: ShippingPriceInput!): ShippingPriceUpdate
shippingPriceTranslate(id: ID!, input: NameTranslationInput!, languageCode: LanguageCodeEnum!): ShippingPriceTranslate
shippingPriceExcludeProducts(id: ID!, input: ShippingPriceExcludeProductsInput!): ShippingPriceExcludeProducts
shippingPriceRemoveProductFromExclude(id: ID!, products: [ID]!): ShippingPriceRemoveProductFromExclude
shippingZoneCreate(input: ShippingZoneCreateInput!): ShippingZoneCreate
shippingZoneDelete(id: ID!): ShippingZoneDelete
shippingZoneBulkDelete(ids: [ID]!): ShippingZoneBulkDelete
shippingZoneUpdate(id: ID!, input: ShippingZoneUpdateInput!): ShippingZoneUpdate
productAttributeAssign(operations: [ProductAttributeAssignInput]!, productTypeId: ID!): ProductAttributeAssign
productAttributeUnassign(attributeIds: [ID]!, productTypeId: ID!): ProductAttributeUnassign
categoryCreate(input: CategoryInput!, parent: ID): CategoryCreate
categoryDelete(id: ID!): CategoryDelete
categoryBulkDelete(ids: [ID]!): CategoryBulkDelete
categoryUpdate(id: ID!, input: CategoryInput!): CategoryUpdate
categoryTranslate(id: ID!, input: TranslationInput!, languageCode: LanguageCodeEnum!): CategoryTranslate
collectionAddProducts(collectionId: ID!, products: [ID]!): CollectionAddProducts
collectionCreate(input: CollectionCreateInput!): CollectionCreate
collectionDelete(id: ID!): CollectionDelete
collectionReorderProducts(collectionId: ID!, moves: [MoveProductInput]!): CollectionReorderProducts
collectionBulkDelete(ids: [ID]!): CollectionBulkDelete
collectionRemoveProducts(collectionId: ID!, products: [ID]!): CollectionRemoveProducts
collectionUpdate(id: ID!, input: CollectionInput!): CollectionUpdate
collectionTranslate(id: ID!, input: TranslationInput!, languageCode: LanguageCodeEnum!): CollectionTranslate
collectionChannelListingUpdate(id: ID!, input: CollectionChannelListingUpdateInput!): CollectionChannelListingUpdate
productCreate(input: ProductCreateInput!): ProductCreate
productDelete(id: ID!): ProductDelete
productBulkDelete(ids: [ID]!): ProductBulkDelete
productUpdate(id: ID!, input: ProductInput!): ProductUpdate
productTranslate(id: ID!, input: TranslationInput!, languageCode: LanguageCodeEnum!): ProductTranslate
productChannelListingUpdate(id: ID!, input: ProductChannelListingUpdateInput!): ProductChannelListingUpdate
productImageCreate(input: ProductImageCreateInput!): ProductImageCreate
productVariantReorder(moves: [ReorderInput]!, productId: ID!): ProductVariantReorder
productImageDelete(id: ID!): ProductImageDelete
productImageBulkDelete(ids: [ID]!): ProductImageBulkDelete
productImageReorder(imagesIds: [ID]!, productId: ID!): ProductImageReorder
productImageUpdate(id: ID!, input: ProductImageUpdateInput!): ProductImageUpdate
productTypeCreate(input: ProductTypeInput!): ProductTypeCreate
productTypeDelete(id: ID!): ProductTypeDelete
productTypeBulkDelete(ids: [ID]!): ProductTypeBulkDelete
productTypeUpdate(id: ID!, input: ProductTypeInput!): ProductTypeUpdate
productTypeReorderAttributes(moves: [ReorderInput]!, productTypeId: ID!, type: ProductAttributeType!): ProductTypeReorderAttributes
productReorderAttributeValues(attributeId: ID!, moves: [ReorderInput]!, productId: ID!): ProductReorderAttributeValues
digitalContentCreate(input: DigitalContentUploadInput!, variantId: ID!): DigitalContentCreate
digitalContentDelete(variantId: ID!): DigitalContentDelete
digitalContentUpdate(input: DigitalContentInput!, variantId: ID!): DigitalContentUpdate
digitalContentUrlCreate(input: DigitalContentUrlCreateInput!): DigitalContentUrlCreate
productVariantCreate(input: ProductVariantCreateInput!): ProductVariantCreate
productVariantDelete(id: ID!): ProductVariantDelete
productVariantBulkCreate(product: ID!, variants: [ProductVariantBulkCreateInput]!): ProductVariantBulkCreate
productVariantBulkDelete(ids: [ID]!): ProductVariantBulkDelete
productVariantStocksCreate(stocks: [StockInput!]!, variantId: ID!): ProductVariantStocksCreate
productVariantStocksDelete(variantId: ID!, warehouseIds: [ID!]): ProductVariantStocksDelete
productVariantStocksUpdate(stocks: [StockInput!]!, variantId: ID!): ProductVariantStocksUpdate
productVariantUpdate(id: ID!, input: ProductVariantInput!): ProductVariantUpdate
productVariantSetDefault(productId: ID!, variantId: ID!): ProductVariantSetDefault
productVariantTranslate(id: ID!, input: NameTranslationInput!, languageCode: LanguageCodeEnum!): ProductVariantTranslate
productVariantChannelListingUpdate(id: ID!, input: [ProductVariantChannelListingAddInput!]!): ProductVariantChannelListingUpdate
productVariantReorderAttributeValues(attributeId: ID!, moves: [ReorderInput]!, variantId: ID!): ProductVariantReorderAttributeValues
variantImageAssign(imageId: ID!, variantId: ID!): VariantImageAssign
variantImageUnassign(imageId: ID!, variantId: ID!): VariantImageUnassign
paymentCapture(amount: PositiveDecimal, paymentId: ID!): PaymentCapture
paymentRefund(amount: PositiveDecimal, paymentId: ID!): PaymentRefund
paymentVoid(paymentId: ID!): PaymentVoid
paymentInitialize(gateway: String!, paymentData: JSONString): PaymentInitialize
pageCreate(input: PageCreateInput!): PageCreate
pageDelete(id: ID!): PageDelete
pageBulkDelete(ids: [ID]!): PageBulkDelete
pageBulkPublish(ids: [ID]!, isPublished: Boolean!): PageBulkPublish
pageUpdate(id: ID!, input: PageInput!): PageUpdate
pageTranslate(id: ID!, input: PageTranslationInput!, languageCode: LanguageCodeEnum!): PageTranslate
pageTypeCreate(input: PageTypeCreateInput!): PageTypeCreate
pageTypeUpdate(id: ID, input: PageTypeUpdateInput!): PageTypeUpdate
pageTypeDelete(id: ID!): PageTypeDelete
pageTypeBulkDelete(ids: [ID!]!): PageTypeBulkDelete
pageAttributeAssign(attributeIds: [ID!]!, pageTypeId: ID!): PageAttributeAssign
pageAttributeUnassign(attributeIds: [ID!]!, pageTypeId: ID!): PageAttributeUnassign
pageTypeReorderAttributes(moves: [ReorderInput!]!, pageTypeId: ID!): PageTypeReorderAttributes
pageReorderAttributeValues(attributeId: ID!, moves: [ReorderInput]!, pageId: ID!): PageReorderAttributeValues
draftOrderComplete(id: ID!): DraftOrderComplete
draftOrderCreate(input: DraftOrderCreateInput!): DraftOrderCreate
draftOrderDelete(id: ID!): DraftOrderDelete
draftOrderBulkDelete(ids: [ID]!): DraftOrderBulkDelete
draftOrderLinesBulkDelete(ids: [ID]!): DraftOrderLinesBulkDelete
draftOrderLinesCreate(id: ID!, input: [OrderLineCreateInput]!): DraftOrderLinesCreate
draftOrderLineDelete(id: ID!): DraftOrderLineDelete
draftOrderLineUpdate(id: ID!, input: OrderLineInput!): DraftOrderLineUpdate
draftOrderUpdate(id: ID!, input: DraftOrderInput!): DraftOrderUpdate
orderAddNote(order: ID!, input: OrderAddNoteInput!): OrderAddNote
orderCancel(id: ID!): OrderCancel
orderCapture(amount: PositiveDecimal!, id: ID!): OrderCapture
orderConfirm(id: ID!): OrderConfirm
orderFulfill(input: OrderFulfillInput!, order: ID): OrderFulfill
orderFulfillmentCancel(id: ID!, input: FulfillmentCancelInput!): FulfillmentCancel
orderFulfillmentUpdateTracking(id: ID!, input: FulfillmentUpdateTrackingInput!): FulfillmentUpdateTracking
orderFulfillmentRefundProducts(input: OrderRefundProductsInput!, order: ID!): FulfillmentRefundProducts
orderMarkAsPaid(id: ID!, transactionReference: String): OrderMarkAsPaid
orderRefund(amount: PositiveDecimal!, id: ID!): OrderRefund
orderUpdate(id: ID!, input: OrderUpdateInput!): OrderUpdate
orderUpdateShipping(order: ID!, input: OrderUpdateShippingInput): OrderUpdateShipping
orderVoid(id: ID!): OrderVoid
orderBulkCancel(ids: [ID]!): OrderBulkCancel
deleteMetadata(id: ID!, keys: [String!]!): DeleteMetadata
deletePrivateMetadata(id: ID!, keys: [String!]!): DeletePrivateMetadata
updateMetadata(id: ID!, input: [MetadataInput!]!): UpdateMetadata
updatePrivateMetadata(id: ID!, input: [MetadataInput!]!): UpdatePrivateMetadata
assignNavigation(menu: ID, navigationType: NavigationType!): AssignNavigation
menuCreate(input: MenuCreateInput!): MenuCreate
menuDelete(id: ID!): MenuDelete
menuBulkDelete(ids: [ID]!): MenuBulkDelete
menuUpdate(id: ID!, input: MenuInput!): MenuUpdate
menuItemCreate(input: MenuItemCreateInput!): MenuItemCreate
menuItemDelete(id: ID!): MenuItemDelete
menuItemBulkDelete(ids: [ID]!): MenuItemBulkDelete
menuItemUpdate(id: ID!, input: MenuItemInput!): MenuItemUpdate
menuItemTranslate(id: ID!, input: NameTranslationInput!, languageCode: LanguageCodeEnum!): MenuItemTranslate
menuItemMove(menu: ID!, moves: [MenuItemMoveInput]!): MenuItemMove
invoiceRequest(number: String, orderId: ID!): InvoiceRequest
invoiceRequestDelete(id: ID!): InvoiceRequestDelete
invoiceCreate(input: InvoiceCreateInput!, orderId: ID!): InvoiceCreate
invoiceDelete(id: ID!): InvoiceDelete
invoiceUpdate(id: ID!, input: UpdateInvoiceInput!): InvoiceUpdate
invoiceSendEmail(id: ID!): InvoiceSendEmail
giftCardActivate(id: ID!): GiftCardActivate
giftCardCreate(input: GiftCardCreateInput!): GiftCardCreate
giftCardDeactivate(id: ID!): GiftCardDeactivate
giftCardUpdate(id: ID!, input: GiftCardUpdateInput!): GiftCardUpdate
pluginUpdate(id: ID!, input: PluginUpdateInput!): PluginUpdate
saleCreate(input: SaleInput!): SaleCreate
saleDelete(id: ID!): SaleDelete
saleBulkDelete(ids: [ID]!): SaleBulkDelete
saleUpdate(id: ID!, input: SaleInput!): SaleUpdate
saleCataloguesAdd(id: ID!, input: CatalogueInput!): SaleAddCatalogues
saleCataloguesRemove(id: ID!, input: CatalogueInput!): SaleRemoveCatalogues
saleTranslate(id: ID!, input: NameTranslationInput!, languageCode: LanguageCodeEnum!): SaleTranslate
saleChannelListingUpdate(id: ID!, input: SaleChannelListingInput!): SaleChannelListingUpdate
voucherCreate(input: VoucherInput!): VoucherCreate
voucherDelete(id: ID!): VoucherDelete
voucherBulkDelete(ids: [ID]!): VoucherBulkDelete
voucherUpdate(id: ID!, input: VoucherInput!): VoucherUpdate
voucherCataloguesAdd(id: ID!, input: CatalogueInput!): VoucherAddCatalogues
voucherCataloguesRemove(id: ID!, input: CatalogueInput!): VoucherRemoveCatalogues
voucherTranslate(id: ID!, input: NameTranslationInput!, languageCode: LanguageCodeEnum!): VoucherTranslate
voucherChannelListingUpdate(id: ID!, input: VoucherChannelListingInput!): VoucherChannelListingUpdate
exportProducts(input: ExportProductsInput!): ExportProducts
fileUpload(file: Upload!): FileUpload
checkoutAddPromoCode(checkoutId: ID!, promoCode: String!): CheckoutAddPromoCode
checkoutBillingAddressUpdate(billingAddress: AddressInput!, checkoutId: ID!): CheckoutBillingAddressUpdate
checkoutComplete(checkoutId: ID!, paymentData: JSONString, redirectUrl: String, storeSource: Boolean = false): CheckoutComplete
checkoutCreate(input: CheckoutCreateInput!): CheckoutCreate
checkoutCustomerAttach(checkoutId: ID!, customerId: ID): CheckoutCustomerAttach
checkoutCustomerDetach(checkoutId: ID!): CheckoutCustomerDetach
checkoutEmailUpdate(checkoutId: ID, email: String!): CheckoutEmailUpdate
checkoutLineDelete(checkoutId: ID!, lineId: ID): CheckoutLineDelete
checkoutLinesAdd(checkoutId: ID!, lines: [CheckoutLineInput]!): CheckoutLinesAdd
checkoutLinesUpdate(checkoutId: ID!, lines: [CheckoutLineInput]!): CheckoutLinesUpdate
checkoutRemovePromoCode(checkoutId: ID!, promoCode: String!): CheckoutRemovePromoCode
checkoutPaymentCreate(checkoutId: ID!, input: PaymentInput!): CheckoutPaymentCreate
checkoutShippingAddressUpdate(checkoutId: ID!, shippingAddress: AddressInput!): CheckoutShippingAddressUpdate
checkoutShippingMethodUpdate(checkoutId: ID, shippingMethodId: ID!): CheckoutShippingMethodUpdate
channelCreate(input: ChannelCreateInput!): ChannelCreate
channelUpdate(id: ID!, input: ChannelUpdateInput!): ChannelUpdate
channelDelete(id: ID!, input: ChannelDeleteInput): ChannelDelete
channelActivate(id: ID!): ChannelActivate
channelDeactivate(id: ID!): ChannelDeactivate
attributeCreate(input: AttributeCreateInput!): AttributeCreate
attributeDelete(id: ID!): AttributeDelete
attributeUpdate(id: ID!, input: AttributeUpdateInput!): AttributeUpdate
attributeTranslate(id: ID!, input: NameTranslationInput!, languageCode: LanguageCodeEnum!): AttributeTranslate
attributeBulkDelete(ids: [ID]!): AttributeBulkDelete
attributeValueBulkDelete(ids: [ID]!): AttributeValueBulkDelete
attributeValueCreate(attribute: ID!, input: AttributeValueCreateInput!): AttributeValueCreate
attributeValueDelete(id: ID!): AttributeValueDelete
attributeValueUpdate(id: ID!, input: AttributeValueCreateInput!): AttributeValueUpdate
attributeValueTranslate(id: ID!, input: NameTranslationInput!, languageCode: LanguageCodeEnum!): AttributeValueTranslate
attributeReorderValues(attributeId: ID!, moves: [ReorderInput]!): AttributeReorderValues
appCreate(input: AppInput!): AppCreate
appUpdate(id: ID!, input: AppInput!): AppUpdate
appDelete(id: ID!): AppDelete
appTokenCreate(input: AppTokenInput!): AppTokenCreate
appTokenDelete(id: ID!): AppTokenDelete
appTokenVerify(token: String!): AppTokenVerify
appInstall(input: AppInstallInput!): AppInstall
appRetryInstall(activateAfterInstallation: Boolean = true, id: ID!): AppRetryInstall
appDeleteFailedInstallation(id: ID!): AppDeleteFailedInstallation
appFetchManifest(manifestUrl: String!): AppFetchManifest
appActivate(id: ID!): AppActivate
appDeactivate(id: ID!): AppDeactivate
tokenCreate(email: String!, password: String!): CreateToken
tokenRefresh(csrfToken: String, refreshToken: String): RefreshToken
tokenVerify(token: String!): VerifyToken
tokensDeactivateAll: DeactivateAllUserTokens
requestPasswordReset(email: String!, redirectUrl: String!): RequestPasswordReset
confirmAccount(email: String!, token: String!): ConfirmAccount
setPassword(email: String!, password: String!, token: String!): SetPassword
passwordChange(newPassword: String!, oldPassword: String!): PasswordChange
requestEmailChange(newEmail: String!, password: String!, redirectUrl: String!): RequestEmailChange
confirmEmailChange(token: String!): ConfirmEmailChange
accountAddressCreate(input: AddressInput!, type: AddressTypeEnum): AccountAddressCreate
accountAddressUpdate(id: ID!, input: AddressInput!): AccountAddressUpdate
accountAddressDelete(id: ID!): AccountAddressDelete
accountSetDefaultAddress(id: ID!, type: AddressTypeEnum!): AccountSetDefaultAddress
accountRegister(input: AccountRegisterInput!): AccountRegister
accountUpdate(input: AccountInput!): AccountUpdate
accountRequestDeletion(redirectUrl: String!): AccountRequestDeletion
accountDelete(token: String!): AccountDelete
addressCreate(input: AddressInput!, userId: ID!): AddressCreate
addressUpdate(id: ID!, input: AddressInput!): AddressUpdate
addressDelete(id: ID!): AddressDelete
addressSetDefault(addressId: ID!, type: AddressTypeEnum!, userId: ID!): AddressSetDefault
customerCreate(input: UserCreateInput!): CustomerCreate
customerUpdate(id: ID!, input: CustomerInput!): CustomerUpdate
customerDelete(id: ID!): CustomerDelete
customerBulkDelete(ids: [ID]!): CustomerBulkDelete
staffCreate(input: StaffCreateInput!): StaffCreate
staffUpdate(id: ID!, input: StaffUpdateInput!): StaffUpdate
staffDelete(id: ID!): StaffDelete
staffBulkDelete(ids: [ID]!): StaffBulkDelete
userAvatarUpdate(image: Upload!): UserAvatarUpdate
userAvatarDelete: UserAvatarDelete
userBulkSetActive(ids: [ID]!, isActive: Boolean!): UserBulkSetActive
permissionGroupCreate(input: PermissionGroupCreateInput!): PermissionGroupCreate
permissionGroupUpdate(id: ID!, input: PermissionGroupUpdateInput!): PermissionGroupUpdate
permissionGroupDelete(id: ID!): PermissionGroupDelete
}
input NameTranslationInput {
name: String
}
type Navigation {
main: Menu
secondary: Menu
}
enum NavigationType {
MAIN
SECONDARY
}
interface Node {
id: ID!
}
interface ObjectWithMetadata {
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
}
type Order implements Node & ObjectWithMetadata {
id: ID!
created: DateTime!
status: OrderStatus!
user: User
languageCode: String!
trackingClientId: String!
billingAddress: Address
shippingAddress: Address
shippingMethod: ShippingMethod
shippingMethodName: String
channel: Channel!
shippingPrice: TaxedMoney
token: String!
voucher: Voucher
giftCards: [GiftCard]
discount: Money
discountName: String
translatedDiscountName: String
displayGrossPrices: Boolean!
customerNote: String!
weight: Weight
redirectUrl: String
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
fulfillments: [Fulfillment]!
lines: [OrderLine]!
actions: [OrderAction]!
availableShippingMethods: [ShippingMethod]
invoices: [Invoice]
number: String
isPaid: Boolean
paymentStatus: PaymentChargeStatusEnum
paymentStatusDisplay: String
payments: [Payment]
total: TaxedMoney
subtotal: TaxedMoney
statusDisplay: String
canFinalize: Boolean!
totalAuthorized: Money
totalCaptured: Money
events: [OrderEvent]
totalBalance: Money!
userEmail: String
isShippingRequired: Boolean!
}
enum OrderAction {
CAPTURE
MARK_AS_PAID
REFUND
VOID
}
type OrderAddNote {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
order: Order
event: OrderEvent
orderErrors: [OrderError!]!
}
input OrderAddNoteInput {
message: String!
}
type OrderBulkCancel {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
orderErrors: [OrderError!]!
}
type OrderCancel {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
order: Order
orderErrors: [OrderError!]!
}
type OrderCapture {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
order: Order
orderErrors: [OrderError!]!
}
type OrderConfirm {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
order: Order
orderErrors: [OrderError!]!
}
type OrderCountableConnection {
pageInfo: PageInfo!
edges: [OrderCountableEdge!]!
totalCount: Int
}
type OrderCountableEdge {
node: Order!
cursor: String!
}
enum OrderDirection {
ASC
DESC
}
input OrderDraftFilterInput {
customer: String
created: DateRangeInput
search: String
}
type OrderError {
field: String
message: String
code: OrderErrorCode!
warehouse: ID
orderLine: ID
variants: [ID!]
}
enum OrderErrorCode {
BILLING_ADDRESS_NOT_SET
CANNOT_CANCEL_FULFILLMENT
CANNOT_CANCEL_ORDER
CANNOT_DELETE
CANNOT_REFUND
CAPTURE_INACTIVE_PAYMENT
NOT_EDITABLE
FULFILL_ORDER_LINE
GRAPHQL_ERROR
INVALID
PRODUCT_NOT_PUBLISHED
PRODUCT_UNAVAILABLE_FOR_PURCHASE
NOT_FOUND
ORDER_NO_SHIPPING_ADDRESS
PAYMENT_ERROR
PAYMENT_MISSING
REQUIRED
SHIPPING_METHOD_NOT_APPLICABLE
SHIPPING_METHOD_REQUIRED
TAX_ERROR
UNIQUE
VOID_INACTIVE_PAYMENT
ZERO_QUANTITY
INVALID_REFUND_QUANTITY
CANNOT_REFUND_FULFILLMENT_LINE
INSUFFICIENT_STOCK
DUPLICATED_INPUT_ITEM
NOT_AVAILABLE_IN_CHANNEL
CHANNEL_INACTIVE
}
type OrderEvent implements Node {
id: ID!
date: DateTime
type: OrderEventsEnum
user: User
message: String
email: String
emailType: OrderEventsEmailsEnum
amount: Float
paymentId: String
paymentGateway: String
quantity: Int
composedId: String
orderNumber: String
invoiceNumber: String
oversoldItems: [String]
lines: [OrderEventOrderLineObject]
fulfilledItems: [FulfillmentLine]
warehouse: Warehouse
transactionReference: String
shippingCostsIncluded: Boolean
}
type OrderEventCountableConnection {
pageInfo: PageInfo!
edges: [OrderEventCountableEdge!]!
totalCount: Int
}
type OrderEventCountableEdge {
node: OrderEvent!
cursor: String!
}
type OrderEventOrderLineObject {
quantity: Int
orderLine: OrderLine
itemName: String
}
enum OrderEventsEmailsEnum {
PAYMENT_CONFIRMATION
CONFIRMED
SHIPPING_CONFIRMATION
TRACKING_UPDATED
ORDER_CONFIRMATION
ORDER_CANCEL
ORDER_REFUND
FULFILLMENT_CONFIRMATION
DIGITAL_LINKS
}
enum OrderEventsEnum {
DRAFT_CREATED
DRAFT_ADDED_PRODUCTS
DRAFT_REMOVED_PRODUCTS
PLACED
PLACED_FROM_DRAFT
OVERSOLD_ITEMS
CANCELED
ORDER_MARKED_AS_PAID
ORDER_FULLY_PAID
UPDATED_ADDRESS
EMAIL_SENT
CONFIRMED
PAYMENT_AUTHORIZED
PAYMENT_CAPTURED
EXTERNAL_SERVICE_NOTIFICATION
PAYMENT_REFUNDED
PAYMENT_VOIDED
PAYMENT_FAILED
INVOICE_REQUESTED
INVOICE_GENERATED
INVOICE_UPDATED
INVOICE_SENT
FULFILLMENT_CANCELED
FULFILLMENT_RESTOCKED_ITEMS
FULFILLMENT_FULFILLED_ITEMS
FULFILLMENT_REFUNDED
TRACKING_UPDATED
NOTE_ADDED
OTHER
}
input OrderFilterInput {
paymentStatus: [PaymentChargeStatusEnum]
status: [OrderStatusFilter]
customer: String
created: DateRangeInput
search: String
channels: [ID]
}
type OrderFulfill {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
fulfillments: [Fulfillment]
order: Order
orderErrors: [OrderError!]!
}
input OrderFulfillInput {
lines: [OrderFulfillLineInput!]!
notifyCustomer: Boolean
}
input OrderFulfillLineInput {
orderLineId: ID
stocks: [OrderFulfillStockInput!]!
}
input OrderFulfillStockInput {
quantity: Int!
warehouse: ID!
}
type OrderLine implements Node {
id: ID!
productName: String!
variantName: String!
productSku: String!
isShippingRequired: Boolean!
quantity: Int!
quantityFulfilled: Int!
taxRate: Float!
digitalContentUrl: DigitalContentUrl
thumbnail(size: Int): Image
unitPrice: TaxedMoney
totalPrice: TaxedMoney
variant: ProductVariant
translatedProductName: String!
translatedVariantName: String!
allocations: [Allocation!]
}
input OrderLineCreateInput {
quantity: Int!
variantId: ID!
}
input OrderLineInput {
quantity: Int!
}
type OrderMarkAsPaid {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
order: Order
orderErrors: [OrderError!]!
}
type OrderRefund {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
order: Order
orderErrors: [OrderError!]!
}
input OrderRefundFulfillmentLineInput {
fulfillmentLineId: ID!
quantity: Int!
}
input OrderRefundLineInput {
orderLineId: ID!
quantity: Int!
}
input OrderRefundProductsInput {
orderLines: [OrderRefundLineInput!]
fulfillmentLines: [OrderRefundFulfillmentLineInput!]
amountToRefund: PositiveDecimal
includeShippingCosts: Boolean = false
}
type OrderSettings {
automaticallyConfirmAllNewOrders: Boolean!
}
type OrderSettingsError {
field: String
message: String
code: OrderSettingsErrorCode!
}
enum OrderSettingsErrorCode {
INVALID
}
type OrderSettingsUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
orderSettings: OrderSettings
orderSettingsErrors: [OrderSettingsError!]!
}
input OrderSettingsUpdateInput {
automaticallyConfirmAllNewOrders: Boolean!
}
enum OrderSortField {
NUMBER
CREATION_DATE
CUSTOMER
PAYMENT
FULFILLMENT_STATUS
}
input OrderSortingInput {
direction: OrderDirection!
field: OrderSortField!
}
enum OrderStatus {
DRAFT
UNCONFIRMED
UNFULFILLED
PARTIALLY_FULFILLED
FULFILLED
CANCELED
}
enum OrderStatusFilter {
READY_TO_FULFILL
READY_TO_CAPTURE
UNFULFILLED
UNCONFIRMED
PARTIALLY_FULFILLED
FULFILLED
CANCELED
}
type OrderUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
orderErrors: [OrderError!]!
order: Order
}
input OrderUpdateInput {
billingAddress: AddressInput
userEmail: String
shippingAddress: AddressInput
}
type OrderUpdateShipping {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
order: Order
orderErrors: [OrderError!]!
}
input OrderUpdateShippingInput {
shippingMethod: ID
}
type OrderVoid {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
order: Order
orderErrors: [OrderError!]!
}
type Page implements Node & ObjectWithMetadata {
seoTitle: String
seoDescription: String
id: ID!
title: String!
content: String!
contentJson: JSONString!
publicationDate: Date
isPublished: Boolean!
slug: String!
pageType: PageType!
created: DateTime!
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
translation(languageCode: LanguageCodeEnum!): PageTranslation
attributes: [SelectedAttribute!]!
}
type PageAttributeAssign {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
pageType: PageType
pageErrors: [PageError!]!
}
type PageAttributeUnassign {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
pageType: PageType
pageErrors: [PageError!]!
}
type PageBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
pageErrors: [PageError!]!
}
type PageBulkPublish {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
pageErrors: [PageError!]!
}
type PageCountableConnection {
pageInfo: PageInfo!
edges: [PageCountableEdge!]!
totalCount: Int
}
type PageCountableEdge {
node: Page!
cursor: String!
}
type PageCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
pageErrors: [PageError!]!
page: Page
}
input PageCreateInput {
slug: String
title: String
content: String
contentJson: JSONString
attributes: [AttributeValueInput!]
isPublished: Boolean
publicationDate: String
seo: SeoInput
pageType: ID!
}
type PageDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
pageErrors: [PageError!]!
page: Page
}
type PageError {
field: String
message: String
code: PageErrorCode!
attributes: [ID!]
values: [ID!]
}
enum PageErrorCode {
GRAPHQL_ERROR
INVALID
NOT_FOUND
REQUIRED
UNIQUE
DUPLICATED_INPUT_ITEM
ATTRIBUTE_ALREADY_ASSIGNED
}
input PageFilterInput {
search: String
}
type PageInfo {
hasNextPage: Boolean!
hasPreviousPage: Boolean!
startCursor: String
endCursor: String
}
input PageInput {
slug: String
title: String
content: String
contentJson: JSONString
attributes: [AttributeValueInput!]
isPublished: Boolean
publicationDate: String
seo: SeoInput
}
type PageReorderAttributeValues {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
page: Page
pageErrors: [PageError!]!
}
enum PageSortField {
TITLE
SLUG
VISIBILITY
CREATION_DATE
PUBLICATION_DATE
}
input PageSortingInput {
direction: OrderDirection!
field: PageSortField!
}
type PageTranslatableContent implements Node {
seoTitle: String
seoDescription: String
id: ID!
title: String!
content: String!
contentJson: JSONString!
translation(languageCode: LanguageCodeEnum!): PageTranslation
page: Page
}
type PageTranslate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
translationErrors: [TranslationError!]!
page: PageTranslatableContent
}
type PageTranslation implements Node {
seoTitle: String
seoDescription: String
id: ID!
title: String!
content: String!
contentJson: JSONString!
language: LanguageDisplay!
}
input PageTranslationInput {
seoTitle: String
seoDescription: String
title: String
content: String
contentJson: JSONString
}
type PageType implements Node & ObjectWithMetadata {
id: ID!
name: String!
slug: String!
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
attributes: [Attribute]
availableAttributes(filter: AttributeFilterInput, before: String, after: String, first: Int, last: Int): AttributeCountableConnection
hasPages: Boolean
}
type PageTypeBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
pageErrors: [PageError!]!
}
type PageTypeCountableConnection {
pageInfo: PageInfo!
edges: [PageTypeCountableEdge!]!
totalCount: Int
}
type PageTypeCountableEdge {
node: PageType!
cursor: String!
}
type PageTypeCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
pageErrors: [PageError!]!
pageType: PageType
}
input PageTypeCreateInput {
name: String
slug: String
addAttributes: [ID!]
}
type PageTypeDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
pageErrors: [PageError!]!
pageType: PageType
}
input PageTypeFilterInput {
search: String
}
type PageTypeReorderAttributes {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
pageType: PageType
pageErrors: [PageError!]!
}
enum PageTypeSortField {
NAME
SLUG
}
input PageTypeSortingInput {
direction: OrderDirection!
field: PageTypeSortField!
}
type PageTypeUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
pageErrors: [PageError!]!
pageType: PageType
}
input PageTypeUpdateInput {
name: String
slug: String
addAttributes: [ID!]
removeAttributes: [ID!]
}
type PageUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
pageErrors: [PageError!]!
page: Page
}
type PasswordChange {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
user: User
accountErrors: [AccountError!]!
}
type Payment implements Node {
id: ID!
gateway: String!
isActive: Boolean!
created: DateTime!
modified: DateTime!
token: String!
checkout: Checkout
order: Order
customerIpAddress: String
chargeStatus: PaymentChargeStatusEnum!
actions: [OrderAction]!
total: Money
capturedAmount: Money
transactions: [Transaction]
availableCaptureAmount: Money
availableRefundAmount: Money
creditCard: CreditCard
}
type PaymentCapture {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
payment: Payment
paymentErrors: [PaymentError!]!
}
enum PaymentChargeStatusEnum {
NOT_CHARGED
PENDING
PARTIALLY_CHARGED
FULLY_CHARGED
PARTIALLY_REFUNDED
FULLY_REFUNDED
REFUSED
CANCELLED
}
type PaymentCountableConnection {
pageInfo: PageInfo!
edges: [PaymentCountableEdge!]!
totalCount: Int
}
type PaymentCountableEdge {
node: Payment!
cursor: String!
}
type PaymentError {
field: String
message: String
code: PaymentErrorCode!
}
enum PaymentErrorCode {
BILLING_ADDRESS_NOT_SET
GRAPHQL_ERROR
INVALID
NOT_FOUND
REQUIRED
UNIQUE
PARTIAL_PAYMENT_NOT_ALLOWED
SHIPPING_ADDRESS_NOT_SET
INVALID_SHIPPING_METHOD
SHIPPING_METHOD_NOT_SET
PAYMENT_ERROR
NOT_SUPPORTED_GATEWAY
}
type PaymentGateway {
name: String!
id: ID!
config: [GatewayConfigLine!]!
currencies: [String]!
}
type PaymentInitialize {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
initializedPayment: PaymentInitialized
paymentErrors: [PaymentError!]!
}
type PaymentInitialized {
gateway: String!
name: String!
data: JSONString
}
input PaymentInput {
gateway: String!
token: String
amount: PositiveDecimal
billingAddress: AddressInput
returnUrl: String
}
type PaymentRefund {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
payment: Payment
paymentErrors: [PaymentError!]!
}
type PaymentSource {
gateway: String!
creditCardInfo: CreditCard
}
type PaymentVoid {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
payment: Payment
paymentErrors: [PaymentError!]!
}
type Permission {
code: PermissionEnum!
name: String!
}
enum PermissionEnum {
MANAGE_USERS
MANAGE_STAFF
MANAGE_APPS
MANAGE_CHANNELS
MANAGE_DISCOUNTS
MANAGE_PLUGINS
MANAGE_GIFT_CARD
MANAGE_MENUS
MANAGE_ORDERS
MANAGE_PAGES
MANAGE_PAGE_TYPES_AND_ATTRIBUTES
MANAGE_PRODUCTS
MANAGE_PRODUCT_TYPES_AND_ATTRIBUTES
MANAGE_SHIPPING
MANAGE_SETTINGS
MANAGE_TRANSLATIONS
MANAGE_CHECKOUTS
}
type PermissionGroupCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
permissionGroupErrors: [PermissionGroupError!]!
group: Group
}
input PermissionGroupCreateInput {
addPermissions: [PermissionEnum!]
addUsers: [ID!]
name: String!
}
type PermissionGroupDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
permissionGroupErrors: [PermissionGroupError!]!
group: Group
}
type PermissionGroupError {
field: String
message: String
code: PermissionGroupErrorCode!
permissions: [PermissionEnum!]
users: [ID!]
}
enum PermissionGroupErrorCode {
ASSIGN_NON_STAFF_MEMBER
DUPLICATED_INPUT_ITEM
CANNOT_REMOVE_FROM_LAST_GROUP
LEFT_NOT_MANAGEABLE_PERMISSION
OUT_OF_SCOPE_PERMISSION
OUT_OF_SCOPE_USER
REQUIRED
UNIQUE
}
input PermissionGroupFilterInput {
search: String
}
enum PermissionGroupSortField {
NAME
}
input PermissionGroupSortingInput {
direction: OrderDirection!
field: PermissionGroupSortField!
}
type PermissionGroupUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
permissionGroupErrors: [PermissionGroupError!]!
group: Group
}
input PermissionGroupUpdateInput {
addPermissions: [PermissionEnum!]
addUsers: [ID!]
name: String
removePermissions: [PermissionEnum!]
removeUsers: [ID!]
}
type Plugin implements Node {
id: ID!
name: String!
description: String!
active: Boolean!
configuration: [ConfigurationItem]
}
type PluginCountableConnection {
pageInfo: PageInfo!
edges: [PluginCountableEdge!]!
totalCount: Int
}
type PluginCountableEdge {
node: Plugin!
cursor: String!
}
type PluginError {
field: String
message: String
code: PluginErrorCode!
}
enum PluginErrorCode {
GRAPHQL_ERROR
INVALID
PLUGIN_MISCONFIGURED
NOT_FOUND
REQUIRED
UNIQUE
}
input PluginFilterInput {
active: Boolean
search: String
}
enum PluginSortField {
NAME
IS_ACTIVE
}
input PluginSortingInput {
direction: OrderDirection!
field: PluginSortField!
}
type PluginUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
plugin: Plugin
pluginsErrors: [PluginError!]!
}
input PluginUpdateInput {
active: Boolean
configuration: [ConfigurationItemInput]
}
scalar PositiveDecimal
input PriceRangeInput {
gte: Float
lte: Float
}
type Product implements Node & ObjectWithMetadata {
id: ID!
seoTitle: String
seoDescription: String
name: String!
description: String!
descriptionJson: JSONString!
productType: ProductType!
slug: String!
category: Category
updatedAt: DateTime
chargeTaxes: Boolean!
weight: Weight
defaultVariant: ProductVariant
rating: Float
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
url: String! @deprecated(reason: "This field will be removed after 2020-07-31.")
thumbnail(size: Int): Image
pricing: ProductPricingInfo
isAvailable: Boolean
taxType: TaxType
attributes: [SelectedAttribute!]!
channelListings: [ProductChannelListing!]
imageById(id: ID): ProductImage
variants: [ProductVariant]
images: [ProductImage]
collections: [Collection]
translation(languageCode: LanguageCodeEnum!): ProductTranslation
availableForPurchase: Date
isAvailableForPurchase: Boolean
}
type ProductAttributeAssign {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productType: ProductType
productErrors: [ProductError!]!
}
input ProductAttributeAssignInput {
id: ID!
type: ProductAttributeType!
}
enum ProductAttributeType {
PRODUCT
VARIANT
}
type ProductAttributeUnassign {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productType: ProductType
productErrors: [ProductError!]!
}
type ProductBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
productErrors: [ProductError!]!
}
type ProductChannelListing implements Node {
id: ID!
publicationDate: Date
isPublished: Boolean!
channel: Channel!
visibleInListings: Boolean!
availableForPurchase: Date
discountedPrice: Money
purchaseCost: MoneyRange
margin: Margin
isAvailableForPurchase: Boolean
pricing: ProductPricingInfo
}
input ProductChannelListingAddInput {
channelId: ID!
isPublished: Boolean
publicationDate: Date
visibleInListings: Boolean
isAvailableForPurchase: Boolean
availableForPurchaseDate: Date
}
type ProductChannelListingError {
field: String
message: String
code: ProductErrorCode!
attributes: [ID!]
values: [ID!]
channels: [ID!]
}
type ProductChannelListingUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
product: Product
productChannelListingErrors: [ProductChannelListingError!]!
}
input ProductChannelListingUpdateInput {
addChannels: [ProductChannelListingAddInput!]
removeChannels: [ID!]
}
type ProductCountableConnection {
pageInfo: PageInfo!
edges: [ProductCountableEdge!]!
totalCount: Int
}
type ProductCountableEdge {
node: Product!
cursor: String!
}
type ProductCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
product: Product
}
input ProductCreateInput {
attributes: [AttributeValueInput]
category: ID
chargeTaxes: Boolean
collections: [ID]
description: String
descriptionJson: JSONString
name: String
slug: String
taxCode: String
seo: SeoInput
weight: WeightScalar
rating: Float
productType: ID!
}
type ProductDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
product: Product
}
type ProductError {
field: String
message: String
code: ProductErrorCode!
attributes: [ID!]
values: [ID!]
}
enum ProductErrorCode {
ALREADY_EXISTS
ATTRIBUTE_ALREADY_ASSIGNED
ATTRIBUTE_CANNOT_BE_ASSIGNED
ATTRIBUTE_VARIANTS_DISABLED
DUPLICATED_INPUT_ITEM
GRAPHQL_ERROR
INVALID
PRODUCT_WITHOUT_CATEGORY
NOT_PRODUCTS_IMAGE
NOT_PRODUCTS_VARIANT
NOT_FOUND
REQUIRED
UNIQUE
VARIANT_NO_DIGITAL_CONTENT
CANNOT_MANAGE_PRODUCT_WITHOUT_VARIANT
PRODUCT_NOT_ASSIGNED_TO_CHANNEL
}
enum ProductFieldEnum {
NAME
DESCRIPTION
PRODUCT_TYPE
CATEGORY
VISIBLE
PRODUCT_WEIGHT
COLLECTIONS
CHARGE_TAXES
PRODUCT_IMAGES
VARIANT_SKU
VARIANT_WEIGHT
VARIANT_IMAGES
}
input ProductFilterInput {
isPublished: Boolean
collections: [ID]
categories: [ID]
hasCategory: Boolean
attributes: [AttributeInput]
stockAvailability: StockAvailability
productType: ID
stocks: ProductStockFilterInput
search: String
price: PriceRangeInput
minimalPrice: PriceRangeInput
productTypes: [ID]
ids: [ID]
channel: String
}
type ProductImage implements Node {
id: ID!
sortOrder: Int
alt: String!
url(size: Int): String!
}
type ProductImageBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
productErrors: [ProductError!]!
}
type ProductImageCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
product: Product
image: ProductImage
productErrors: [ProductError!]!
}
input ProductImageCreateInput {
alt: String
image: Upload!
product: ID!
}
type ProductImageDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
product: Product
image: ProductImage
productErrors: [ProductError!]!
}
type ProductImageReorder {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
product: Product
images: [ProductImage]
productErrors: [ProductError!]!
}
type ProductImageUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
product: Product
image: ProductImage
productErrors: [ProductError!]!
}
input ProductImageUpdateInput {
alt: String
}
input ProductInput {
attributes: [AttributeValueInput]
category: ID
chargeTaxes: Boolean
collections: [ID]
description: String
descriptionJson: JSONString
name: String
slug: String
taxCode: String
seo: SeoInput
weight: WeightScalar
rating: Float
}
input ProductOrder {
direction: OrderDirection!
channel: String
attributeId: ID
field: ProductOrderField
}
enum ProductOrderField {
NAME
PRICE
MINIMAL_PRICE
DATE
TYPE
PUBLISHED
PUBLICATION_DATE
COLLECTION
RATING
}
type ProductPricingInfo {
onSale: Boolean
discount: TaxedMoney
discountLocalCurrency: TaxedMoney
priceRange: TaxedMoneyRange
priceRangeUndiscounted: TaxedMoneyRange
priceRangeLocalCurrency: TaxedMoneyRange
}
type ProductReorderAttributeValues {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
product: Product
productErrors: [ProductError!]!
}
input ProductStockFilterInput {
warehouseIds: [ID!]
quantity: IntRangeInput
}
type ProductTranslatableContent implements Node {
id: ID!
seoTitle: String
seoDescription: String
name: String!
description: String!
descriptionJson: JSONString!
translation(languageCode: LanguageCodeEnum!): ProductTranslation
product: Product
}
type ProductTranslate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
translationErrors: [TranslationError!]!
product: Product
}
type ProductTranslation implements Node {
id: ID!
seoTitle: String
seoDescription: String
name: String!
description: String!
descriptionJson: JSONString!
language: LanguageDisplay!
}
type ProductType implements Node & ObjectWithMetadata {
id: ID!
name: String!
slug: String!
hasVariants: Boolean!
isShippingRequired: Boolean!
isDigital: Boolean!
weight: Weight
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
products(channel: String, before: String, after: String, first: Int, last: Int): ProductCountableConnection @deprecated(reason: "Use the top-level `products` query with the `productTypes` filter.")
taxRate: TaxRateType
taxType: TaxType
variantAttributes(variantSelection: VariantAttributeScope): [Attribute]
productAttributes: [Attribute]
availableAttributes(filter: AttributeFilterInput, before: String, after: String, first: Int, last: Int): AttributeCountableConnection
}
type ProductTypeBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
productErrors: [ProductError!]!
}
enum ProductTypeConfigurable {
CONFIGURABLE
SIMPLE
}
type ProductTypeCountableConnection {
pageInfo: PageInfo!
edges: [ProductTypeCountableEdge!]!
totalCount: Int
}
type ProductTypeCountableEdge {
node: ProductType!
cursor: String!
}
type ProductTypeCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
productType: ProductType
}
type ProductTypeDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
productType: ProductType
}
enum ProductTypeEnum {
DIGITAL
SHIPPABLE
}
input ProductTypeFilterInput {
search: String
configurable: ProductTypeConfigurable
productType: ProductTypeEnum
ids: [ID]
}
input ProductTypeInput {
name: String
slug: String
hasVariants: Boolean
productAttributes: [ID]
variantAttributes: [ID]
isShippingRequired: Boolean
isDigital: Boolean
weight: WeightScalar
taxCode: String
}
type ProductTypeReorderAttributes {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productType: ProductType
productErrors: [ProductError!]!
}
enum ProductTypeSortField {
NAME
DIGITAL
SHIPPING_REQUIRED
}
input ProductTypeSortingInput {
direction: OrderDirection!
field: ProductTypeSortField!
}
type ProductTypeUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
productType: ProductType
}
type ProductUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
product: Product
}
type ProductVariant implements Node & ObjectWithMetadata {
id: ID!
name: String!
sku: String!
product: Product!
trackInventory: Boolean!
weight: Weight
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
quantity: Int! @deprecated(reason: "Use the stock field instead. This field will be removed after 2020-07-31.")
quantityAllocated: Int @deprecated(reason: "Use the stock field instead. This field will be removed after 2020-07-31.")
stockQuantity: Int! @deprecated(reason: "Use the quantityAvailable field instead. This field will be removed after 2020-07-31.")
channelListings: [ProductVariantChannelListing!]
pricing: VariantPricingInfo
isAvailable: Boolean @deprecated(reason: "Use the stock field instead. This field will be removed after 2020-07-31.")
attributes(variantSelection: VariantAttributeScope): [SelectedAttribute!]!
costPrice: Money
margin: Int
quantityOrdered: Int
revenue(period: ReportingPeriod): TaxedMoney
images: [ProductImage]
translation(languageCode: LanguageCodeEnum!): ProductVariantTranslation
digitalContent: DigitalContent
stocks(countryCode: CountryCode): [Stock]
quantityAvailable(countryCode: CountryCode): Int!
}
type ProductVariantBulkCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
productVariants: [ProductVariant!]!
bulkProductErrors: [BulkProductError!]!
}
input ProductVariantBulkCreateInput {
attributes: [BulkAttributeValueInput]!
sku: String!
trackInventory: Boolean
weight: WeightScalar
stocks: [StockInput!]
channelListings: [ProductVariantChannelListingAddInput!]
}
type ProductVariantBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
productErrors: [ProductError!]!
}
type ProductVariantChannelListing implements Node {
id: ID!
channel: Channel!
price: Money
costPrice: Money
margin: Int
}
input ProductVariantChannelListingAddInput {
channelId: ID!
price: PositiveDecimal!
costPrice: PositiveDecimal
}
type ProductVariantChannelListingUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
variant: ProductVariant
productChannelListingErrors: [ProductChannelListingError!]!
}
type ProductVariantCountableConnection {
pageInfo: PageInfo!
edges: [ProductVariantCountableEdge!]!
totalCount: Int
}
type ProductVariantCountableEdge {
node: ProductVariant!
cursor: String!
}
type ProductVariantCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
productVariant: ProductVariant
}
input ProductVariantCreateInput {
attributes: [AttributeValueInput]!
sku: String
trackInventory: Boolean
weight: WeightScalar
product: ID!
stocks: [StockInput!]
}
type ProductVariantDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
productVariant: ProductVariant
}
input ProductVariantFilterInput {
search: String
sku: [String]
}
input ProductVariantInput {
attributes: [AttributeValueInput]
sku: String
trackInventory: Boolean
weight: WeightScalar
}
type ProductVariantReorder {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
product: Product
productErrors: [ProductError!]!
}
type ProductVariantReorderAttributeValues {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productVariant: ProductVariant
productErrors: [ProductError!]!
}
type ProductVariantSetDefault {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
product: Product
productErrors: [ProductError!]!
}
type ProductVariantStocksCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productVariant: ProductVariant
bulkStockErrors: [BulkStockError!]!
}
type ProductVariantStocksDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productVariant: ProductVariant
stockErrors: [StockError!]!
}
type ProductVariantStocksUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productVariant: ProductVariant
bulkStockErrors: [BulkStockError!]!
}
type ProductVariantTranslatableContent implements Node {
id: ID!
name: String!
translation(languageCode: LanguageCodeEnum!): ProductVariantTranslation
productVariant: ProductVariant
}
type ProductVariantTranslate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
translationErrors: [TranslationError!]!
productVariant: ProductVariant
}
type ProductVariantTranslation implements Node {
id: ID!
name: String!
language: LanguageDisplay!
}
type ProductVariantUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
productVariant: ProductVariant
}
input PublishableChannelListingInput {
channelId: ID!
isPublished: Boolean
publicationDate: Date
}
type Query {
webhook(id: ID!): Webhook
webhookEvents: [WebhookEvent]
webhookSamplePayload(eventType: WebhookSampleEventTypeEnum!): JSONString
warehouse(id: ID!): Warehouse
warehouses(filter: WarehouseFilterInput, sortBy: WarehouseSortingInput, before: String, after: String, first: Int, last: Int): WarehouseCountableConnection
translations(kind: TranslatableKinds!, before: String, after: String, first: Int, last: Int): TranslatableItemConnection
translation(id: ID!, kind: TranslatableKinds!): TranslatableItem
stock(id: ID!): Stock
stocks(filter: StockFilterInput, before: String, after: String, first: Int, last: Int): StockCountableConnection
shop: Shop!
orderSettings: OrderSettings
shippingZone(id: ID!, channel: String): ShippingZone
shippingZones(channel: String, before: String, after: String, first: Int, last: Int): ShippingZoneCountableConnection
digitalContent(id: ID!): DigitalContent
digitalContents(before: String, after: String, first: Int, last: Int): DigitalContentCountableConnection
categories(filter: CategoryFilterInput, sortBy: CategorySortingInput, level: Int, before: String, after: String, first: Int, last: Int): CategoryCountableConnection
category(id: ID, slug: String): Category
collection(id: ID, slug: String, channel: String): Collection
collections(filter: CollectionFilterInput, sortBy: CollectionSortingInput, channel: String, before: String, after: String, first: Int, last: Int): CollectionCountableConnection
product(id: ID, slug: String, channel: String): Product
products(filter: ProductFilterInput, sortBy: ProductOrder, stockAvailability: StockAvailability, channel: String, before: String, after: String, first: Int, last: Int): ProductCountableConnection
productType(id: ID!): ProductType
productTypes(filter: ProductTypeFilterInput, sortBy: ProductTypeSortingInput, before: String, after: String, first: Int, last: Int): ProductTypeCountableConnection
productVariant(id: ID, sku: String, channel: String): ProductVariant
productVariants(ids: [ID], channel: String, filter: ProductVariantFilterInput, before: String, after: String, first: Int, last: Int): ProductVariantCountableConnection
reportProductSales(period: ReportingPeriod!, channel: String!, before: String, after: String, first: Int, last: Int): ProductVariantCountableConnection
payment(id: ID!): Payment
payments(before: String, after: String, first: Int, last: Int): PaymentCountableConnection
page(id: ID, slug: String): Page
pages(sortBy: PageSortingInput, filter: PageFilterInput, before: String, after: String, first: Int, last: Int): PageCountableConnection
pageType(id: ID!): PageType
pageTypes(sortBy: PageTypeSortingInput, filter: PageTypeFilterInput, before: String, after: String, first: Int, last: Int): PageTypeCountableConnection
homepageEvents(before: String, after: String, first: Int, last: Int): OrderEventCountableConnection
order(id: ID!): Order
orders(sortBy: OrderSortingInput, filter: OrderFilterInput, created: ReportingPeriod, status: OrderStatusFilter, channel: String, before: String, after: String, first: Int, last: Int): OrderCountableConnection
draftOrders(sortBy: OrderSortingInput, filter: OrderDraftFilterInput, created: ReportingPeriod, before: String, after: String, first: Int, last: Int): OrderCountableConnection
ordersTotal(period: ReportingPeriod, channel: String): TaxedMoney
orderByToken(token: UUID!): Order
menu(channel: String, id: ID, name: String, slug: String): Menu
menus(channel: String, sortBy: MenuSortingInput, filter: MenuFilterInput, before: String, after: String, first: Int, last: Int): MenuCountableConnection
menuItem(id: ID!, channel: String): MenuItem
menuItems(channel: String, sortBy: MenuItemSortingInput, filter: MenuItemFilterInput, before: String, after: String, first: Int, last: Int): MenuItemCountableConnection
giftCard(id: ID!): GiftCard
giftCards(before: String, after: String, first: Int, last: Int): GiftCardCountableConnection
plugin(id: ID!): Plugin
plugins(filter: PluginFilterInput, sortBy: PluginSortingInput, before: String, after: String, first: Int, last: Int): PluginCountableConnection
sale(id: ID!, channel: String): Sale
sales(filter: SaleFilterInput, sortBy: SaleSortingInput, query: String, channel: String, before: String, after: String, first: Int, last: Int): SaleCountableConnection
voucher(id: ID!, channel: String): Voucher
vouchers(filter: VoucherFilterInput, sortBy: VoucherSortingInput, query: String, channel: String, before: String, after: String, first: Int, last: Int): VoucherCountableConnection
exportFile(id: ID!): ExportFile
exportFiles(filter: ExportFileFilterInput, sortBy: ExportFileSortingInput, before: String, after: String, first: Int, last: Int): ExportFileCountableConnection
taxTypes: [TaxType]
checkout(token: UUID): Checkout
checkouts(channel: String, before: String, after: String, first: Int, last: Int): CheckoutCountableConnection
checkoutLine(id: ID): CheckoutLine
checkoutLines(before: String, after: String, first: Int, last: Int): CheckoutLineCountableConnection
channel(id: ID): Channel
channels: [Channel!]
attributes(filter: AttributeFilterInput, sortBy: AttributeSortingInput, before: String, after: String, first: Int, last: Int): AttributeCountableConnection
attribute(id: ID, slug: String): Attribute
appsInstallations: [AppInstallation!]!
apps(filter: AppFilterInput, sortBy: AppSortingInput, before: String, after: String, first: Int, last: Int): AppCountableConnection
app(id: ID!): App
addressValidationRules(countryCode: CountryCode!, countryArea: String, city: String, cityArea: String): AddressValidationData
address(id: ID!): Address
customers(filter: CustomerFilterInput, sortBy: UserSortingInput, before: String, after: String, first: Int, last: Int): UserCountableConnection
permissionGroups(filter: PermissionGroupFilterInput, sortBy: PermissionGroupSortingInput, before: String, after: String, first: Int, last: Int): GroupCountableConnection
permissionGroup(id: ID!): Group
me: User
staffUsers(filter: StaffUserInput, sortBy: UserSortingInput, before: String, after: String, first: Int, last: Int): UserCountableConnection
user(id: ID!): User
_entities(representations: [_Any]): [_Entity]
_service: _Service
}
type ReducedRate {
rate: Float!
rateType: TaxRateType!
}
type RefreshToken {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
token: String
user: User
accountErrors: [AccountError!]!
}
input ReorderInput {
id: ID!
sortOrder: Int
}
enum ReportingPeriod {
TODAY
THIS_MONTH
}
type RequestEmailChange {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
user: User
accountErrors: [AccountError!]!
}
type RequestPasswordReset {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
accountErrors: [AccountError!]!
}
type Sale implements Node {
id: ID!
name: String!
type: SaleType!
startDate: DateTime!
endDate: DateTime
categories(before: String, after: String, first: Int, last: Int): CategoryCountableConnection
collections(before: String, after: String, first: Int, last: Int): CollectionCountableConnection
products(before: String, after: String, first: Int, last: Int): ProductCountableConnection
translation(languageCode: LanguageCodeEnum!): SaleTranslation
channelListings: [SaleChannelListing!]
discountValue: Float
currency: String
}
type SaleAddCatalogues {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
sale: Sale
discountErrors: [DiscountError!]!
}
type SaleBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
discountErrors: [DiscountError!]!
}
type SaleChannelListing implements Node {
id: ID!
channel: Channel!
discountValue: Float!
currency: String!
}
input SaleChannelListingAddInput {
channelId: ID!
discountValue: PositiveDecimal!
}
input SaleChannelListingInput {
addChannels: [SaleChannelListingAddInput!]
removeChannels: [ID!]
}
type SaleChannelListingUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
sale: Sale
discountErrors: [DiscountError!]!
}
type SaleCountableConnection {
pageInfo: PageInfo!
edges: [SaleCountableEdge!]!
totalCount: Int
}
type SaleCountableEdge {
node: Sale!
cursor: String!
}
type SaleCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
discountErrors: [DiscountError!]!
sale: Sale
}
type SaleDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
discountErrors: [DiscountError!]!
sale: Sale
}
input SaleFilterInput {
status: [DiscountStatusEnum]
saleType: DiscountValueTypeEnum
started: DateTimeRangeInput
search: String
}
input SaleInput {
name: String
type: DiscountValueTypeEnum
value: PositiveDecimal
products: [ID]
categories: [ID]
collections: [ID]
startDate: DateTime
endDate: DateTime
}
type SaleRemoveCatalogues {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
sale: Sale
discountErrors: [DiscountError!]!
}
enum SaleSortField {
NAME
START_DATE
END_DATE
VALUE
TYPE
}
input SaleSortingInput {
direction: OrderDirection!
channel: String
field: SaleSortField!
}
type SaleTranslatableContent implements Node {
id: ID!
name: String!
translation(languageCode: LanguageCodeEnum!): SaleTranslation
sale: Sale
}
type SaleTranslate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
translationErrors: [TranslationError!]!
sale: Sale
}
type SaleTranslation implements Node {
id: ID!
name: String
language: LanguageDisplay!
}
enum SaleType {
FIXED
PERCENTAGE
}
type SaleUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
discountErrors: [DiscountError!]!
sale: Sale
}
type SelectedAttribute {
attribute: Attribute!
values: [AttributeValue]!
}
input SeoInput {
title: String
description: String
}
type SetPassword {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
token: String
refreshToken: String
csrfToken: String
user: User
accountErrors: [AccountError!]!
}
type ShippingError {
field: String
message: String
code: ShippingErrorCode!
warehouses: [ID!]
channels: [ID!]
}
enum ShippingErrorCode {
ALREADY_EXISTS
GRAPHQL_ERROR
INVALID
MAX_LESS_THAN_MIN
NOT_FOUND
REQUIRED
UNIQUE
DUPLICATED_INPUT_ITEM
}
type ShippingMethod implements Node & ObjectWithMetadata {
id: ID!
name: String!
minimumOrderWeight: Weight
maximumOrderWeight: Weight
maximumDeliveryDays: Int
minimumDeliveryDays: Int
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
type: ShippingMethodTypeEnum
translation(languageCode: LanguageCodeEnum!): ShippingMethodTranslation
channelListings: [ShippingMethodChannelListing!]
price: Money
maximumOrderPrice: Money
minimumOrderPrice: Money
zipCodeRules: [ShippingMethodZipCodeRule]
excludedProducts(before: String, after: String, first: Int, last: Int): ProductCountableConnection
}
type ShippingMethodChannelListing implements Node {
id: ID!
channel: Channel!
minimumOrderPrice: Money
maximumOrderPrice: Money
price: Money
}
input ShippingMethodChannelListingAddInput {
channelId: ID!
price: PositiveDecimal
minimumOrderPrice: PositiveDecimal
maximumOrderPrice: PositiveDecimal
}
input ShippingMethodChannelListingInput {
addChannels: [ShippingMethodChannelListingAddInput!]
removeChannels: [ID!]
}
type ShippingMethodChannelListingUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
shippingMethod: ShippingMethod
shippingErrors: [ShippingError!]!
}
type ShippingMethodTranslatableContent implements Node {
id: ID!
name: String!
translation(languageCode: LanguageCodeEnum!): ShippingMethodTranslation
shippingMethod: ShippingMethod
}
type ShippingMethodTranslation implements Node {
id: ID!
name: String
language: LanguageDisplay!
}
enum ShippingMethodTypeEnum {
PRICE
WEIGHT
}
type ShippingMethodZipCodeRule implements Node {
start: String
end: String
id: ID!
}
type ShippingPriceBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
shippingErrors: [ShippingError!]!
}
type ShippingPriceCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
shippingZone: ShippingZone
shippingMethod: ShippingMethod
shippingErrors: [ShippingError!]!
}
type ShippingPriceDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
shippingMethod: ShippingMethod
shippingZone: ShippingZone
shippingErrors: [ShippingError!]!
}
type ShippingPriceExcludeProducts {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
shippingMethod: ShippingMethod
shippingErrors: [ShippingError!]!
}
input ShippingPriceExcludeProductsInput {
products: [ID]!
}
input ShippingPriceInput {
name: String
minimumOrderWeight: WeightScalar
maximumOrderWeight: WeightScalar
maximumDeliveryDays: Int
minimumDeliveryDays: Int
type: ShippingMethodTypeEnum
shippingZone: ID
}
type ShippingPriceRemoveProductFromExclude {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
shippingMethod: ShippingMethod
shippingErrors: [ShippingError!]!
}
type ShippingPriceTranslate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
translationErrors: [TranslationError!]!
shippingMethod: ShippingMethod
}
type ShippingPriceUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
shippingZone: ShippingZone
shippingMethod: ShippingMethod
shippingErrors: [ShippingError!]!
}
type ShippingZipCodeRulesCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
zipCodeRules: [ShippingMethodZipCodeRule]
shippingMethod: ShippingMethod
shippingErrors: [ShippingError!]!
}
input ShippingZipCodeRulesCreateInput {
zipCodeRules: [ShippingZipCodeRulesCreateInputRange]!
}
input ShippingZipCodeRulesCreateInputRange {
start: String!
end: String
}
type ShippingZipCodeRulesDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
shippingMethod: ShippingMethod
shippingErrors: [ShippingError!]!
shippingMethodZipCodeRule: ShippingMethodZipCodeRule
}
type ShippingZone implements Node & ObjectWithMetadata {
id: ID!
name: String!
default: Boolean!
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
priceRange: MoneyRange
countries: [CountryDisplay]
shippingMethods: [ShippingMethod]
warehouses: [Warehouse]
description: String
}
type ShippingZoneBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
shippingErrors: [ShippingError!]!
}
type ShippingZoneCountableConnection {
pageInfo: PageInfo!
edges: [ShippingZoneCountableEdge!]!
totalCount: Int
}
type ShippingZoneCountableEdge {
node: ShippingZone!
cursor: String!
}
type ShippingZoneCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
shippingErrors: [ShippingError!]!
shippingZone: ShippingZone
}
input ShippingZoneCreateInput {
name: String
description: String
countries: [String]
default: Boolean
addWarehouses: [ID]
}
type ShippingZoneDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
shippingErrors: [ShippingError!]!
shippingZone: ShippingZone
}
type ShippingZoneUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
shippingErrors: [ShippingError!]!
shippingZone: ShippingZone
}
input ShippingZoneUpdateInput {
name: String
description: String
countries: [String]
default: Boolean
addWarehouses: [ID]
removeWarehouses: [ID]
}
type Shop {
availablePaymentGateways(currency: String): [PaymentGateway!]!
availableShippingMethods(channel: String!, address: AddressInput): [ShippingMethod]
geolocalization: Geolocalization
countries(languageCode: LanguageCodeEnum): [CountryDisplay!]!
defaultCountry: CountryDisplay
defaultMailSenderName: String
defaultMailSenderAddress: String
description: String
domain: Domain!
languages: [LanguageDisplay]!
name: String!
navigation: Navigation @deprecated(reason: "Fetch menus using the `menu` query with `slug` parameter.")
permissions: [Permission]!
phonePrefixes: [String]!
headerText: String
includeTaxesInPrices: Boolean!
displayGrossPrices: Boolean!
chargeTaxesOnShipping: Boolean!
trackInventoryByDefault: Boolean
defaultWeightUnit: WeightUnitsEnum
translation(languageCode: LanguageCodeEnum!): ShopTranslation
automaticFulfillmentDigitalProducts: Boolean
defaultDigitalMaxDownloads: Int
defaultDigitalUrlValidDays: Int
companyAddress: Address
customerSetPasswordUrl: String
staffNotificationRecipients: [StaffNotificationRecipient]
}
type ShopAddressUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
shop: Shop
shopErrors: [ShopError!]!
}
type ShopDomainUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
shop: Shop
shopErrors: [ShopError!]!
}
type ShopError {
field: String
message: String
code: ShopErrorCode!
}
enum ShopErrorCode {
ALREADY_EXISTS
CANNOT_FETCH_TAX_RATES
GRAPHQL_ERROR
INVALID
NOT_FOUND
REQUIRED
UNIQUE
}
type ShopFetchTaxRates {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
shop: Shop
shopErrors: [ShopError!]!
}
input ShopSettingsInput {
headerText: String
description: String
includeTaxesInPrices: Boolean
displayGrossPrices: Boolean
chargeTaxesOnShipping: Boolean
trackInventoryByDefault: Boolean
defaultWeightUnit: WeightUnitsEnum
automaticFulfillmentDigitalProducts: Boolean
defaultDigitalMaxDownloads: Int
defaultDigitalUrlValidDays: Int
defaultMailSenderName: String
defaultMailSenderAddress: String
customerSetPasswordUrl: String
}
type ShopSettingsTranslate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
shop: Shop
translationErrors: [TranslationError!]!
}
input ShopSettingsTranslationInput {
headerText: String
description: String
}
type ShopSettingsUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
shop: Shop
shopErrors: [ShopError!]!
}
type ShopTranslation implements Node {
id: ID!
headerText: String!
description: String!
language: LanguageDisplay!
}
input SiteDomainInput {
domain: String
name: String
}
type StaffBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
staffErrors: [StaffError!]!
}
type StaffCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
staffErrors: [StaffError!]!
user: User
}
input StaffCreateInput {
firstName: String
lastName: String
email: String
isActive: Boolean
note: String
addGroups: [ID!]
redirectUrl: String
}
type StaffDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
staffErrors: [StaffError!]!
user: User
}
type StaffError {
field: String
message: String
code: AccountErrorCode!
permissions: [PermissionEnum!]
groups: [ID!]
users: [ID!]
}
enum StaffMemberStatus {
ACTIVE
DEACTIVATED
}
type StaffNotificationRecipient implements Node {
user: User
active: Boolean
id: ID!
email: String
}
type StaffNotificationRecipientCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
shopErrors: [ShopError!]!
staffNotificationRecipient: StaffNotificationRecipient
}
type StaffNotificationRecipientDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
shopErrors: [ShopError!]!
staffNotificationRecipient: StaffNotificationRecipient
}
input StaffNotificationRecipientInput {
user: ID
email: String
active: Boolean
}
type StaffNotificationRecipientUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
shopErrors: [ShopError!]!
staffNotificationRecipient: StaffNotificationRecipient
}
type StaffUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
staffErrors: [StaffError!]!
user: User
}
input StaffUpdateInput {
firstName: String
lastName: String
email: String
isActive: Boolean
note: String
addGroups: [ID!]
removeGroups: [ID!]
}
input StaffUserInput {
status: StaffMemberStatus
search: String
}
type Stock implements Node {
warehouse: Warehouse!
productVariant: ProductVariant!
quantity: Int!
id: ID!
quantityAllocated: Int!
}
enum StockAvailability {
IN_STOCK
OUT_OF_STOCK
}
type StockCountableConnection {
pageInfo: PageInfo!
edges: [StockCountableEdge!]!
totalCount: Int
}
type StockCountableEdge {
node: Stock!
cursor: String!
}
type StockError {
field: String
message: String
code: StockErrorCode!
}
enum StockErrorCode {
ALREADY_EXISTS
GRAPHQL_ERROR
INVALID
NOT_FOUND
REQUIRED
UNIQUE
}
input StockFilterInput {
quantity: Float
search: String
}
input StockInput {
warehouse: ID!
quantity: Int
}
enum TaxRateType {
ACCOMMODATION
ADMISSION_TO_CULTURAL_EVENTS
ADMISSION_TO_ENTERTAINMENT_EVENTS
ADMISSION_TO_SPORTING_EVENTS
ADVERTISING
AGRICULTURAL_SUPPLIES
BABY_FOODSTUFFS
BIKES
BOOKS
CHILDRENS_CLOTHING
DOMESTIC_FUEL
DOMESTIC_SERVICES
E_BOOKS
FOODSTUFFS
HOTELS
MEDICAL
NEWSPAPERS
PASSENGER_TRANSPORT
PHARMACEUTICALS
PROPERTY_RENOVATIONS
RESTAURANTS
SOCIAL_HOUSING
STANDARD
WATER
WINE
}
type TaxType {
description: String
taxCode: String
}
type TaxedMoney {
currency: String!
gross: Money!
net: Money!
tax: Money!
}
type TaxedMoneyRange {
start: TaxedMoney
stop: TaxedMoney
}
type Transaction implements Node {
id: ID!
created: DateTime!
payment: Payment!
token: String!
kind: TransactionKind!
isSuccess: Boolean!
error: TransactionError
amount: Money
}
enum TransactionError {
TRANSACTIONERROR_INCORRECT_NUMBER
TRANSACTIONERROR_INVALID_NUMBER
TRANSACTIONERROR_INCORRECT_CVV
TRANSACTIONERROR_INVALID_CVV
TRANSACTIONERROR_INCORRECT_ZIP
TRANSACTIONERROR_INCORRECT_ADDRESS
TRANSACTIONERROR_INVALID_EXPIRY_DATE
TRANSACTIONERROR_EXPIRED
TRANSACTIONERROR_PROCESSING_ERROR
TRANSACTIONERROR_DECLINED
}
enum TransactionKind {
EXTERNAL
AUTH
PENDING
ACTION_TO_CONFIRM
REFUND
REFUND_ONGOING
CAPTURE
VOID
CONFIRM
CANCEL
}
union TranslatableItem = ProductTranslatableContent | CollectionTranslatableContent | CategoryTranslatableContent | AttributeTranslatableContent | AttributeValueTranslatableContent | ProductVariantTranslatableContent | PageTranslatableContent | ShippingMethodTranslatableContent | SaleTranslatableContent | VoucherTranslatableContent | MenuItemTranslatableContent
type TranslatableItemConnection {
pageInfo: PageInfo!
edges: [TranslatableItemEdge!]!
totalCount: Int
}
type TranslatableItemEdge {
node: TranslatableItem!
cursor: String!
}
enum TranslatableKinds {
ATTRIBUTE
ATTRIBUTE_VALUE
CATEGORY
COLLECTION
MENU_ITEM
PAGE
PRODUCT
SALE
SHIPPING_METHOD
VARIANT
VOUCHER
}
type TranslationError {
field: String
message: String
code: TranslationErrorCode!
}
enum TranslationErrorCode {
GRAPHQL_ERROR
NOT_FOUND
REQUIRED
}
input TranslationInput {
seoTitle: String
seoDescription: String
name: String
description: String
descriptionJson: JSONString
}
scalar UUID
input UpdateInvoiceInput {
number: String
url: String
}
type UpdateMetadata {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
metadataErrors: [MetadataError!]!
item: ObjectWithMetadata
}
type UpdatePrivateMetadata {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
metadataErrors: [MetadataError!]!
item: ObjectWithMetadata
}
scalar Upload
type UploadError {
field: String
message: String
code: UploadErrorCode!
}
enum UploadErrorCode {
GRAPHQL_ERROR
}
type User implements Node & ObjectWithMetadata {
id: ID!
lastLogin: DateTime
email: String!
firstName: String!
lastName: String!
isStaff: Boolean!
isActive: Boolean!
note: String
dateJoined: DateTime!
defaultShippingAddress: Address
defaultBillingAddress: Address
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
addresses: [Address]
checkout: Checkout @deprecated(reason: "Use the `checkout_tokens` field to fetch the user checkouts.")
checkoutTokens(channel: String): [UUID!]
giftCards(before: String, after: String, first: Int, last: Int): GiftCardCountableConnection
orders(before: String, after: String, first: Int, last: Int): OrderCountableConnection
permissions: [Permission] @deprecated(reason: "Will be removed in Saleor 2.11.Use the `userPermissions` instead.")
userPermissions: [UserPermission]
permissionGroups: [Group]
editableGroups: [Group]
avatar(size: Int): Image
events: [CustomerEvent]
storedPaymentSources: [PaymentSource]
}
type UserAvatarDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
user: User
accountErrors: [AccountError!]!
}
type UserAvatarUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
user: User
accountErrors: [AccountError!]!
}
type UserBulkSetActive {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
accountErrors: [AccountError!]!
}
type UserCountableConnection {
pageInfo: PageInfo!
edges: [UserCountableEdge!]!
totalCount: Int
}
type UserCountableEdge {
node: User!
cursor: String!
}
input UserCreateInput {
defaultBillingAddress: AddressInput
defaultShippingAddress: AddressInput
firstName: String
lastName: String
email: String
isActive: Boolean
note: String
redirectUrl: String
}
type UserPermission {
code: PermissionEnum!
name: String!
sourcePermissionGroups(userId: ID!): [Group!]
}
enum UserSortField {
FIRST_NAME
LAST_NAME
EMAIL
ORDER_COUNT
}
input UserSortingInput {
direction: OrderDirection!
field: UserSortField!
}
type VAT {
countryCode: String!
standardRate: Float
reducedRates: [ReducedRate]!
}
enum VariantAttributeScope {
ALL
VARIANT_SELECTION
NOT_VARIANT_SELECTION
}
type VariantImageAssign {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productVariant: ProductVariant
image: ProductImage
productErrors: [ProductError!]!
}
type VariantImageUnassign {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productVariant: ProductVariant
image: ProductImage
productErrors: [ProductError!]!
}
type VariantPricingInfo {
onSale: Boolean
discount: TaxedMoney
discountLocalCurrency: TaxedMoney
price: TaxedMoney
priceUndiscounted: TaxedMoney
priceLocalCurrency: TaxedMoney
}
type VerifyToken {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
user: User
isValid: Boolean!
payload: GenericScalar
accountErrors: [AccountError!]!
}
type Voucher implements Node {
id: ID!
name: String
type: VoucherTypeEnum!
code: String!
usageLimit: Int
used: Int!
startDate: DateTime!
endDate: DateTime
applyOncePerOrder: Boolean!
applyOncePerCustomer: Boolean!
discountValueType: DiscountValueTypeEnum!
minCheckoutItemsQuantity: Int
categories(before: String, after: String, first: Int, last: Int): CategoryCountableConnection
collections(before: String, after: String, first: Int, last: Int): CollectionCountableConnection
products(before: String, after: String, first: Int, last: Int): ProductCountableConnection
countries: [CountryDisplay]
translation(languageCode: LanguageCodeEnum!): VoucherTranslation
discountValue: Float
currency: String
minSpent: Money
channelListings: [VoucherChannelListing!]
}
type VoucherAddCatalogues {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
voucher: Voucher
discountErrors: [DiscountError!]!
}
type VoucherBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
discountErrors: [DiscountError!]!
}
type VoucherChannelListing implements Node {
id: ID!
channel: Channel!
discountValue: Float!
currency: String!
minSpent: Money
}
input VoucherChannelListingAddInput {
channelId: ID!
discountValue: PositiveDecimal
minAmountSpent: PositiveDecimal
}
input VoucherChannelListingInput {
addChannels: [VoucherChannelListingAddInput!]
removeChannels: [ID!]
}
type VoucherChannelListingUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
voucher: Voucher
discountErrors: [DiscountError!]!
}
type VoucherCountableConnection {
pageInfo: PageInfo!
edges: [VoucherCountableEdge!]!
totalCount: Int
}
type VoucherCountableEdge {
node: Voucher!
cursor: String!
}
type VoucherCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
discountErrors: [DiscountError!]!
voucher: Voucher
}
type VoucherDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
discountErrors: [DiscountError!]!
voucher: Voucher
}
enum VoucherDiscountType {
FIXED
PERCENTAGE
SHIPPING
}
input VoucherFilterInput {
status: [DiscountStatusEnum]
timesUsed: IntRangeInput
discountType: [VoucherDiscountType]
started: DateTimeRangeInput
search: String
}
input VoucherInput {
type: VoucherTypeEnum
name: String
code: String
startDate: DateTime
endDate: DateTime
discountValueType: DiscountValueTypeEnum
products: [ID]
collections: [ID]
categories: [ID]
minCheckoutItemsQuantity: Int
countries: [String]
applyOncePerOrder: Boolean
applyOncePerCustomer: Boolean
usageLimit: Int
}
type VoucherRemoveCatalogues {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
voucher: Voucher
discountErrors: [DiscountError!]!
}
enum VoucherSortField {
CODE
START_DATE
END_DATE
VALUE
TYPE
USAGE_LIMIT
MINIMUM_SPENT_AMOUNT
}
input VoucherSortingInput {
direction: OrderDirection!
channel: String
field: VoucherSortField!
}
type VoucherTranslatableContent implements Node {
id: ID!
name: String
translation(languageCode: LanguageCodeEnum!): VoucherTranslation
voucher: Voucher
}
type VoucherTranslate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
translationErrors: [TranslationError!]!
voucher: Voucher
}
type VoucherTranslation implements Node {
id: ID!
name: String
language: LanguageDisplay!
}
enum VoucherTypeEnum {
SHIPPING
ENTIRE_ORDER
SPECIFIC_PRODUCT
}
type VoucherUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
discountErrors: [DiscountError!]!
voucher: Voucher
}
type Warehouse implements Node {
id: ID!
name: String!
slug: String!
companyName: String!
shippingZones(before: String, after: String, first: Int, last: Int): ShippingZoneCountableConnection!
address: Address!
email: String!
}
input WarehouseAddressInput {
streetAddress1: String!
streetAddress2: String
city: String!
cityArea: String
postalCode: String
country: CountryCode!
countryArea: String
phone: String
}
type WarehouseCountableConnection {
pageInfo: PageInfo!
edges: [WarehouseCountableEdge!]!
totalCount: Int
}
type WarehouseCountableEdge {
node: Warehouse!
cursor: String!
}
type WarehouseCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
warehouseErrors: [WarehouseError!]!
warehouse: Warehouse
}
input WarehouseCreateInput {
slug: String
companyName: String
email: String
name: String!
address: WarehouseAddressInput!
shippingZones: [ID]
}
type WarehouseDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
warehouseErrors: [WarehouseError!]!
warehouse: Warehouse
}
type WarehouseError {
field: String
message: String
code: WarehouseErrorCode!
}
enum WarehouseErrorCode {
ALREADY_EXISTS
GRAPHQL_ERROR
INVALID
NOT_FOUND
REQUIRED
UNIQUE
}
input WarehouseFilterInput {
search: String
ids: [ID]
}
type WarehouseShippingZoneAssign {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
warehouseErrors: [WarehouseError!]!
warehouse: Warehouse
}
type WarehouseShippingZoneUnassign {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
warehouseErrors: [WarehouseError!]!
warehouse: Warehouse
}
enum WarehouseSortField {
NAME
}
input WarehouseSortingInput {
direction: OrderDirection!
field: WarehouseSortField!
}
type WarehouseUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
warehouseErrors: [WarehouseError!]!
warehouse: Warehouse
}
input WarehouseUpdateInput {
slug: String
companyName: String
email: String
name: String
address: WarehouseAddressInput
}
type Webhook implements Node {
name: String!
targetUrl: String!
isActive: Boolean!
secretKey: String
id: ID!
events: [WebhookEvent!]!
app: App!
}
type WebhookCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
webhookErrors: [WebhookError!]!
webhook: Webhook
}
input WebhookCreateInput {
name: String
targetUrl: String
events: [WebhookEventTypeEnum]
app: ID
isActive: Boolean
secretKey: String
}
type WebhookDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
webhookErrors: [WebhookError!]!
webhook: Webhook
}
type WebhookError {
field: String
message: String
code: WebhookErrorCode!
}
enum WebhookErrorCode {
GRAPHQL_ERROR
INVALID
NOT_FOUND
REQUIRED
UNIQUE
}
type WebhookEvent {
eventType: WebhookEventTypeEnum!
name: String!
}
enum WebhookEventTypeEnum {
ANY_EVENTS
ORDER_CREATED
ORDER_CONFIRMED
ORDER_FULLY_PAID
ORDER_UPDATED
ORDER_CANCELLED
ORDER_FULFILLED
INVOICE_REQUESTED
INVOICE_DELETED
INVOICE_SENT
CUSTOMER_CREATED
PRODUCT_CREATED
PRODUCT_UPDATED
CHECKOUT_QUANTITY_CHANGED
CHECKOUT_CREATED
CHECKOUT_UPDATED
FULFILLMENT_CREATED
}
enum WebhookSampleEventTypeEnum {
ORDER_CREATED
ORDER_CONFIRMED
ORDER_FULLY_PAID
ORDER_UPDATED
ORDER_CANCELLED
ORDER_FULFILLED
INVOICE_REQUESTED
INVOICE_DELETED
INVOICE_SENT
CUSTOMER_CREATED
PRODUCT_CREATED
PRODUCT_UPDATED
CHECKOUT_QUANTITY_CHANGED
CHECKOUT_CREATED
CHECKOUT_UPDATED
FULFILLMENT_CREATED
}
type WebhookUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
webhookErrors: [WebhookError!]!
webhook: Webhook
}
input WebhookUpdateInput {
name: String
targetUrl: String
events: [WebhookEventTypeEnum]
app: ID
isActive: Boolean
secretKey: String
}
type Weight {
unit: WeightUnitsEnum!
value: Float!
}
scalar WeightScalar
enum WeightUnitsEnum {
KG
LB
OZ
G
}
scalar _Any
union _Entity = Address | User | Group | App | ProductVariant | Product | ProductType | Collection | Category | ProductImage | PageType
type _Service {
sdl: String
}