Closed kulame closed 3 years ago
@kulame please provide the complete schema so that I can reproduce the issue. Thanks
my schema file.
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
INVALID
INVALID_PASSWORD
LEFT_NOT_MANAGEABLE_PERMISSION
INVALID_CREDENTIALS
NOT_FOUND
OUT_OF_SCOPE_SERVICE_ACCOUNT
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 AccountUpdateMeta {
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]!
privateMeta: [MetaStore]! @deprecated(reason: "Use the `privetaMetadata` field. This field will be removed after 2020-07-31.")
meta: [MetaStore]! @deprecated(reason: "Use the `metadata` field. This field will be removed after 2020-07-31.")
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]!
privateMeta: [MetaStore]! @deprecated(reason: "Use the `privetaMetadata` field. This field will be removed after 2020-07-31.")
meta: [MetaStore]! @deprecated(reason: "Use the `metadata` field. This field will be removed after 2020-07-31.")
inputType: AttributeInputTypeEnum
name: String
slug: String
values: [AttributeValue]
valueRequired: Boolean!
visibleInStorefront: Boolean!
filterableInStorefront: Boolean!
filterableInDashboard: Boolean!
availableInGrid: Boolean!
translation(languageCode: LanguageCodeEnum!): AttributeTranslation
storefrontSearchPosition: Int!
}
type AttributeAssign {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productType: ProductType
productErrors: [ProductError!]!
}
input AttributeAssignInput {
id: ID!
type: AttributeTypeEnum!
}
type AttributeBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
productErrors: [ProductError!]!
}
type AttributeClearMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
attribute: Attribute
}
type AttributeClearPrivateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
attribute: Attribute
}
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
productErrors: [ProductError!]!
}
input AttributeCreateInput {
inputType: AttributeInputTypeEnum
name: String!
slug: String
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.")
productErrors: [ProductError!]!
attribute: Attribute
}
input AttributeFilterInput {
valueRequired: Boolean
isVariantOnly: Boolean
visibleInStorefront: Boolean
filterableInStorefront: Boolean
filterableInDashboard: Boolean
availableInGrid: Boolean
search: String
ids: [ID]
inCollection: ID
inCategory: ID
}
input AttributeInput {
slug: String!
value: String
values: [String]
}
enum AttributeInputTypeEnum {
DROPDOWN
MULTISELECT
}
type AttributeReorderValues {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
attribute: Attribute
productErrors: [ProductError!]!
}
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
VARIANT
}
type AttributeUnassign {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productType: ProductType
productErrors: [ProductError!]!
}
type AttributeUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
attribute: Attribute
productErrors: [ProductError!]!
}
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 AttributeUpdateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
attribute: Attribute
}
type AttributeUpdatePrivateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
attribute: Attribute
}
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
}
type AttributeValueBulkDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
productErrors: [ProductError!]!
}
type AttributeValueCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
attribute: Attribute
productErrors: [ProductError!]!
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
productErrors: [ProductError!]!
attributeValue: AttributeValue
}
input AttributeValueInput {
id: ID
values: [String]!
}
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
productErrors: [ProductError!]!
attributeValue: AttributeValue
}
type AuthorizationKey {
name: AuthorizationKeyType!
key: String!
}
type AuthorizationKeyAdd {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
authorizationKey: AuthorizationKey
shop: Shop
shopErrors: [ShopError!]!
}
type AuthorizationKeyDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
authorizationKey: AuthorizationKey
shop: Shop
shopErrors: [ShopError!]!
}
input AuthorizationKeyInput {
key: String!
password: String!
}
enum AuthorizationKeyType {
FACEBOOK
GOOGLE_OAUTH2
}
type BulkProductError {
field: String
message: String
code: ProductErrorCode!
attributes: [ID!]
index: Int
warehouses: [ID!]
}
type BulkStockError {
field: String
message: String
code: ProductErrorCode!
attributes: [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]!
privateMeta: [MetaStore]! @deprecated(reason: "Use the `privetaMetadata` field. This field will be removed after 2020-07-31.")
meta: [MetaStore]! @deprecated(reason: "Use the `metadata` field. This field will be removed after 2020-07-31.")
ancestors(before: String, after: String, first: Int, last: Int): CategoryCountableConnection
products(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 CategoryClearMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
category: Category
}
type CategoryClearPrivateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
category: Category
}
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!
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 CategoryUpdateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
category: Category
}
type CategoryUpdatePrivateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
category: Category
}
type Checkout implements Node & ObjectWithMetadata {
created: DateTime!
lastChange: DateTime!
user: User
quantity: Int!
billingAddress: Address
shippingAddress: Address
shippingMethod: ShippingMethod
note: String!
discount: Money
discountName: String
translatedDiscountName: String
voucherCode: String
giftCards: [GiftCard]
id: ID!
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
privateMeta: [MetaStore]! @deprecated(reason: "Use the `privetaMetadata` field. This field will be removed after 2020-07-31.")
meta: [MetaStore]! @deprecated(reason: "Use the `metadata` field. This field will be removed after 2020-07-31.")
availableShippingMethods: [ShippingMethod]!
availablePaymentGateways: [PaymentGateway!]!
email: String!
isShippingRequired: Boolean!
lines: [CheckoutLine]
shippingPrice: TaxedMoney
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 CheckoutClearMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
checkoutErrors: [CheckoutError!]!
checkout: Checkout
}
type CheckoutClearPrivateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
checkoutErrors: [CheckoutError!]!
checkout: Checkout
}
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 {
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
}
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 CheckoutUpdateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
checkoutErrors: [CheckoutError!]!
checkout: Checkout
}
type CheckoutUpdatePrivateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
checkoutErrors: [CheckoutError!]!
checkout: Checkout
}
type ChoiceValue {
raw: String
verbose: String
}
type Collection implements Node & ObjectWithMetadata {
seoTitle: String
seoDescription: String
id: ID!
name: String!
description: String!
descriptionJson: JSONString!
publicationDate: Date
slug: String!
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
privateMeta: [MetaStore]! @deprecated(reason: "Use the `privetaMetadata` field. This field will be removed after 2020-07-31.")
meta: [MetaStore]! @deprecated(reason: "Use the `metadata` field. This field will be removed after 2020-07-31.")
products(filter: ProductFilterInput, sortBy: ProductOrder, before: String, after: String, first: Int, last: Int): ProductCountableConnection
backgroundImage(size: Int): Image
translation(languageCode: LanguageCodeEnum!): CollectionTranslation
isPublished: Boolean!
}
type CollectionAddProducts {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
collection: Collection
productErrors: [ProductError!]!
}
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 CollectionBulkPublish {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
productErrors: [ProductError!]!
}
type CollectionClearMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
collection: Collection
}
type CollectionClearPrivateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
collection: Collection
}
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.")
productErrors: [ProductError!]!
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.")
productErrors: [ProductError!]!
collection: Collection
}
input CollectionFilterInput {
published: CollectionPublished
search: String
ids: [ID]
}
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
productErrors: [ProductError!]!
}
type CollectionReorderProducts {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
collection: Collection
productErrors: [ProductError!]!
}
enum CollectionSortField {
NAME
AVAILABILITY
PRODUCT_COUNT
PUBLICATION_DATE
}
input CollectionSortingInput {
direction: OrderDirection!
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.")
productErrors: [ProductError!]!
collection: Collection
}
type CollectionUpdateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
collection: Collection
}
type CollectionUpdatePrivateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
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
}
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
moneySpent: PriceRangeInput
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]!
privateMeta: [MetaStore]! @deprecated(reason: "Use the `privetaMetadata` field. This field will be removed after 2020-07-31.")
meta: [MetaStore]! @deprecated(reason: "Use the `metadata` field. This field will be removed after 2020-07-31.")
}
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
code: DiscountErrorCode!
}
enum DiscountErrorCode {
ALREADY_EXISTS
GRAPHQL_ERROR
INVALID
NOT_FOUND
REQUIRED
UNIQUE
}
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
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
}
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!]
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
}
enum FileTypesEnum {
CSV
XLSX
}
type Fulfillment implements Node & ObjectWithMetadata {
id: ID!
fulfillmentOrder: Int!
status: FulfillmentStatus!
trackingNumber: String!
created: DateTime!
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
privateMeta: [MetaStore]! @deprecated(reason: "Use the `privetaMetadata` field. This field will be removed after 2020-07-31.")
meta: [MetaStore]! @deprecated(reason: "Use the `metadata` field. This field will be removed after 2020-07-31.")
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 FulfillmentClearMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
fulfillment: Fulfillment
}
type FulfillmentClearPrivateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
fulfillment: Fulfillment
}
type FulfillmentLine implements Node {
id: ID!
quantity: Int!
orderLine: OrderLine
}
enum FulfillmentStatus {
FULFILLED
CANCELED
}
type FulfillmentUpdateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
fulfillment: Fulfillment
}
type FulfillmentUpdatePrivateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
fulfillment: Fulfillment
}
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 HomepageCollectionUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
shop: Shop
shopErrors: [ShopError!]!
}
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]!
privateMeta: [MetaStore]! @deprecated(reason: "Use the `privetaMetadata` field. This field will be removed after 2020-07-31.")
meta: [MetaStore]! @deprecated(reason: "Use the `metadata` field. This field will be removed after 2020-07-31.")
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 MetaClientStore {
name: String!
metadata: [MetaItem]!
}
input MetaInput {
namespace: String!
clientName: String!
key: String!
value: String!
}
type MetaItem {
key: String!
value: String!
}
input MetaPath {
namespace: String!
clientName: String!
key: String!
}
type MetaStore {
namespace: String!
clients: [MetaClientStore]!
}
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
authorizationKeyAdd(input: AuthorizationKeyInput!, keyType: AuthorizationKeyType!): AuthorizationKeyAdd
authorizationKeyDelete(keyType: AuthorizationKeyType!): AuthorizationKeyDelete
staffNotificationRecipientCreate(input: StaffNotificationRecipientInput!): StaffNotificationRecipientCreate
staffNotificationRecipientUpdate(id: ID!, input: StaffNotificationRecipientInput!): StaffNotificationRecipientUpdate
staffNotificationRecipientDelete(id: ID!): StaffNotificationRecipientDelete
homepageCollectionUpdate(collection: ID): HomepageCollectionUpdate
shopDomainUpdate(input: SiteDomainInput): ShopDomainUpdate
shopSettingsUpdate(input: ShopSettingsInput!): ShopSettingsUpdate
shopFetchTaxRates: ShopFetchTaxRates
shopSettingsTranslate(input: ShopSettingsTranslationInput!, languageCode: LanguageCodeEnum!): ShopSettingsTranslate
shopAddressUpdate(input: AddressInput): ShopAddressUpdate
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
shippingZoneCreate(input: ShippingZoneCreateInput!): ShippingZoneCreate
shippingZoneDelete(id: ID!): ShippingZoneDelete
shippingZoneBulkDelete(ids: [ID]!): ShippingZoneBulkDelete
shippingZoneUpdate(id: ID!, input: ShippingZoneUpdateInput!): ShippingZoneUpdate
attributeCreate(input: AttributeCreateInput!): AttributeCreate
attributeDelete(id: ID!): AttributeDelete
attributeBulkDelete(ids: [ID]!): AttributeBulkDelete
attributeAssign(operations: [AttributeAssignInput]!, productTypeId: ID!): AttributeAssign
attributeUnassign(attributeIds: [ID]!, productTypeId: ID!): AttributeUnassign
attributeUpdate(id: ID!, input: AttributeUpdateInput!): AttributeUpdate
attributeTranslate(id: ID!, input: NameTranslationInput!, languageCode: LanguageCodeEnum!): AttributeTranslate
attributeUpdateMetadata(id: ID!, input: MetaInput!): AttributeUpdateMeta @deprecated(reason: "Use the `updateMetadata` mutation instead. This field will be removed after 2020-07-31.")
attributeClearMetadata(id: ID!, input: MetaPath!): AttributeClearMeta @deprecated(reason: "Use the `deleteMetadata` mutation instead. This field will be removed after 2020-07-31.")
attributeUpdatePrivateMetadata(id: ID!, input: MetaInput!): AttributeUpdatePrivateMeta @deprecated(reason: "Use the `updatePrivateMetadata` mutation instead. This field will be removed after 2020-07-31.")
attributeClearPrivateMetadata(id: ID!, input: MetaPath!): AttributeClearPrivateMeta @deprecated(reason: "Use the `deletePrivateMetadata` mutation instead. This field will be removed after 2020-07-31.")
attributeValueCreate(attribute: ID!, input: AttributeValueCreateInput!): AttributeValueCreate
attributeValueDelete(id: ID!): AttributeValueDelete
attributeValueBulkDelete(ids: [ID]!): AttributeValueBulkDelete
attributeValueUpdate(id: ID!, input: AttributeValueCreateInput!): AttributeValueUpdate
attributeValueTranslate(id: ID!, input: NameTranslationInput!, languageCode: LanguageCodeEnum!): AttributeValueTranslate
attributeReorderValues(attributeId: ID!, moves: [ReorderInput]!): AttributeReorderValues
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
categoryUpdateMetadata(id: ID!, input: MetaInput!): CategoryUpdateMeta @deprecated(reason: "Use the `updateMetadata` mutation instead. This field will be removed after 2020-07-31.")
categoryClearMetadata(id: ID!, input: MetaPath!): CategoryClearMeta @deprecated(reason: "Use the `deleteMetadata` mutation instead. This field will be removed after 2020-07-31.")
categoryUpdatePrivateMetadata(id: ID!, input: MetaInput!): CategoryUpdatePrivateMeta @deprecated(reason: "Use the `updatePrivateMetadata` mutation instead. This field will be removed after 2020-07-31.")
categoryClearPrivateMetadata(id: ID!, input: MetaPath!): CategoryClearPrivateMeta @deprecated(reason: "Use the `deletePrivateMetadata` mutation instead. This field will be removed after 2020-07-31.")
collectionAddProducts(collectionId: ID!, products: [ID]!): CollectionAddProducts
collectionCreate(input: CollectionCreateInput!): CollectionCreate
collectionDelete(id: ID!): CollectionDelete
collectionReorderProducts(collectionId: ID!, moves: [MoveProductInput]!): CollectionReorderProducts
collectionBulkDelete(ids: [ID]!): CollectionBulkDelete
collectionBulkPublish(ids: [ID]!, isPublished: Boolean!): CollectionBulkPublish
collectionRemoveProducts(collectionId: ID!, products: [ID]!): CollectionRemoveProducts
collectionUpdate(id: ID!, input: CollectionInput!): CollectionUpdate
collectionTranslate(id: ID!, input: TranslationInput!, languageCode: LanguageCodeEnum!): CollectionTranslate
collectionUpdateMetadata(id: ID!, input: MetaInput!): CollectionUpdateMeta @deprecated(reason: "Use the `updateMetadata` mutation instead. This field will be removed after 2020-07-31.")
collectionClearMetadata(id: ID!, input: MetaPath!): CollectionClearMeta @deprecated(reason: "Use the `deleteMetadata` mutation instead. This field will be removed after 2020-07-31.")
collectionUpdatePrivateMetadata(id: ID!, input: MetaInput!): CollectionUpdatePrivateMeta @deprecated(reason: "Use the `updatePrivateMetadata` mutation instead. This field will be removed after 2020-07-31.")
collectionClearPrivateMetadata(id: ID!, input: MetaPath!): CollectionClearPrivateMeta @deprecated(reason: "Use the `deletePrivateMetadata` mutation instead. This field will be removed after 2020-07-31.")
productCreate(input: ProductCreateInput!): ProductCreate
productDelete(id: ID!): ProductDelete
productBulkDelete(ids: [ID]!): ProductBulkDelete
productBulkPublish(ids: [ID]!, isPublished: Boolean!): ProductBulkPublish
productUpdate(id: ID!, input: ProductInput!): ProductUpdate
productTranslate(id: ID!, input: TranslationInput!, languageCode: LanguageCodeEnum!): ProductTranslate
productUpdateMetadata(id: ID!, input: MetaInput!): ProductUpdateMeta @deprecated(reason: "Use the `updateMetadata` mutation instead. This field will be removed after 2020-07-31.")
productClearMetadata(id: ID!, input: MetaPath!): ProductClearMeta @deprecated(reason: "Use the `deleteMetadata` mutation instead. This field will be removed after 2020-07-31.")
productUpdatePrivateMetadata(id: ID!, input: MetaInput!): ProductUpdatePrivateMeta @deprecated(reason: "Use the `updatePrivateMetadata` mutation instead. This field will be removed after 2020-07-31.")
productClearPrivateMetadata(id: ID!, input: MetaPath!): ProductClearPrivateMeta @deprecated(reason: "Use the `deletePrivateMetadata` mutation instead. This field will be removed after 2020-07-31.")
productSetAvailabilityForPurchase(isAvailable: Boolean!, productId: ID!, startDate: Date): ProductSetAvailabilityForPurchase
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: AttributeTypeEnum!): ProductTypeReorderAttributes
productTypeUpdateMetadata(id: ID!, input: MetaInput!): ProductTypeUpdateMeta @deprecated(reason: "Use the `updateMetadata` mutation instead. This field will be removed after 2020-07-31.")
productTypeClearMetadata(id: ID!, input: MetaPath!): ProductTypeClearMeta @deprecated(reason: "Use the `deleteMetadata` mutation instead. This field will be removed after 2020-07-31.")
productTypeUpdatePrivateMetadata(id: ID!, input: MetaInput!): ProductTypeUpdatePrivateMeta @deprecated(reason: "Use the `updatePrivateMetadata` mutation instead. This field will be removed after 2020-07-31.")
productTypeClearPrivateMetadata(id: ID!, input: MetaPath!): ProductTypeClearPrivateMeta @deprecated(reason: "Use the `deletePrivateMetadata` mutation instead. This field will be removed after 2020-07-31.")
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
productVariantUpdateMetadata(id: ID!, input: MetaInput!): ProductVariantUpdateMeta @deprecated(reason: "Use the `updateMetadata` mutation instead. This field will be removed after 2020-07-31.")
productVariantClearMetadata(id: ID!, input: MetaPath!): ProductVariantClearMeta @deprecated(reason: "Use the `deleteMetadata` mutation instead. This field will be removed after 2020-07-31.")
productVariantUpdatePrivateMetadata(id: ID!, input: MetaInput!): ProductVariantUpdatePrivateMeta @deprecated(reason: "Use the `updatePrivateMetadata` mutation instead. This field will be removed after 2020-07-31.")
productVariantClearPrivateMetadata(id: ID!, input: MetaPath!): ProductVariantClearPrivateMeta @deprecated(reason: "Use the `deletePrivateMetadata` mutation instead. This field will be removed after 2020-07-31.")
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
pageCreate(input: PageInput!): 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
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
orderClearPrivateMeta(id: ID!, input: MetaPath!): OrderClearPrivateMeta @deprecated(reason: "Use the `deletePrivateMetadata` mutation instead. This field will be removed after 2020-07-31.")
orderClearMeta(input: MetaPath!, token: UUID!): OrderClearMeta @deprecated(reason: "Use the `deleteMetadata` mutation instead. This field will be removed after 2020-07-31.")
orderFulfill(input: OrderFulfillInput!, order: ID): OrderFulfill
orderFulfillmentCancel(id: ID!, input: FulfillmentCancelInput!): FulfillmentCancel
orderFulfillmentUpdateTracking(id: ID!, input: FulfillmentUpdateTrackingInput!): FulfillmentUpdateTracking
orderFulfillmentClearMeta(id: ID!, input: MetaPath!): FulfillmentClearMeta @deprecated(reason: "Use the `deleteMetadata` mutation instead. This field will be removed after 2020-07-31.")
orderFulfillmentClearPrivateMeta(id: ID!, input: MetaPath!): FulfillmentClearPrivateMeta @deprecated(reason: "Use the `deletePrivateMetadata` mutation instead. This field will be removed after 2020-07-31.")
orderFulfillmentUpdateMeta(id: ID!, input: MetaInput!): FulfillmentUpdateMeta @deprecated(reason: "Use the `updateMetadata` mutation instead. This field will be removed after 2020-07-31.")
orderFulfillmentUpdatePrivateMeta(id: ID!, input: MetaInput!): FulfillmentUpdatePrivateMeta @deprecated(reason: "Use the `updatePrivateMetadata` mutation instead. This field will be removed after 2020-07-31.")
orderMarkAsPaid(id: ID!): OrderMarkAsPaid
orderRefund(amount: PositiveDecimal!, id: ID!): OrderRefund
orderUpdate(id: ID!, input: OrderUpdateInput!): OrderUpdate
orderUpdateMeta(input: MetaInput!, token: UUID!): OrderUpdateMeta @deprecated(reason: "Use the `updateMetadata` mutation instead. This field will be removed after 2020-07-31.")
orderUpdatePrivateMeta(id: ID!, input: MetaInput!): OrderUpdatePrivateMeta @deprecated(reason: "Use the `updatePrivateMetadata` mutation instead. This field will be removed after 2020-07-31.")
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
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
exportProducts(input: ExportProductsInput!): ExportProducts
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
checkoutUpdateMetadata(id: ID!, input: MetaInput!): CheckoutUpdateMeta @deprecated(reason: "Use the `updateMetadata` mutation. This field will be removed after 2020-07-31.")
checkoutClearMetadata(id: ID!, input: MetaPath!): CheckoutClearMeta @deprecated(reason: "Use the `deleteMetadata` mutation. This field will be removed after 2020-07-31.")
checkoutUpdatePrivateMetadata(id: ID!, input: MetaInput!): CheckoutUpdatePrivateMeta @deprecated(reason: "Use the `updatePrivateMetadata` mutation. This field will be removed after 2020-07-31.")
checkoutClearPrivateMetadata(id: ID!, input: MetaPath!): CheckoutClearPrivateMeta @deprecated(reason: "Use the `deletePrivateMetadata` mutation. This field will be removed after 2020-07-31.")
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
accountUpdateMeta(input: MetaInput!): AccountUpdateMeta @deprecated(reason: "Use the `updateMetadata` mutation. This field will be removed after 2020-07-31.")
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
userUpdateMetadata(id: ID!, input: MetaInput!): UserUpdateMeta @deprecated(reason: "Use the `updateMetadata` mutation. This field will be removed after 2020-07-31.")
userClearMetadata(id: ID!, input: MetaPath!): UserClearMeta @deprecated(reason: "Use the `deleteMetadata` mutation. This field will be removed after 2020-07-31.")
userUpdatePrivateMetadata(id: ID!, input: MetaInput!): UserUpdatePrivateMeta @deprecated(reason: "Use the `updatePrivateMetadata` mutation. This field will be removed after 2020-07-31.")
userClearPrivateMetadata(id: ID!, input: MetaPath!): UserClearPrivateMeta @deprecated(reason: "Use the `deletePrivateMetadata` mutation. This field will be removed after 2020-07-31.")
serviceAccountCreate(input: ServiceAccountInput!): ServiceAccountCreate @deprecated(reason: "Use the `appCreate` mutation instead. This field will be removed after 2020-07-31.")
serviceAccountUpdate(id: ID!, input: ServiceAccountInput!): ServiceAccountUpdate @deprecated(reason: "Use the `appUpdate` mutation instead. This field will be removed after 2020-07-31.")
serviceAccountDelete(id: ID!): ServiceAccountDelete @deprecated(reason: "Use the `appDelete` mutation instead. This field will be removed after 2020-07-31.")
serviceAccountUpdatePrivateMetadata(id: ID!, input: MetaInput!): ServiceAccountUpdatePrivateMeta @deprecated(reason: "Use the `updatePrivateMetadata` mutation with App instead.This field will be removed after 2020-07-31.")
serviceAccountClearPrivateMetadata(id: ID!, input: MetaPath!): ServiceAccountClearPrivateMeta @deprecated(reason: "Use the `deletePrivateMetadata` mutation with App instead.This field will be removed after 2020-07-31.")
serviceAccountTokenCreate(input: ServiceAccountTokenInput!): ServiceAccountTokenCreate @deprecated(reason: "Use the `appTokenCreate` mutation instead. This field will be removed after 2020-07-31.")
serviceAccountTokenDelete(id: ID!): ServiceAccountTokenDelete @deprecated(reason: "Use the `appTokenDelete` mutation instead. This field will be removed after 2020-07-31.")
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]!
privateMeta: [MetaStore]! @deprecated(reason: "Use the `privetaMetadata` field. This field will be removed after 2020-07-31.")
meta: [MetaStore]! @deprecated(reason: "Use the `metadata` field. This field will be removed after 2020-07-31.")
}
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
shippingPrice: TaxedMoney
token: String!
voucher: Voucher
giftCards: [GiftCard]
discount: Money
discountName: String
translatedDiscountName: String
displayGrossPrices: Boolean!
customerNote: String!
weight: Weight
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
privateMeta: [MetaStore]! @deprecated(reason: "Use the `privetaMetadata` field. This field will be removed after 2020-07-31.")
meta: [MetaStore]! @deprecated(reason: "Use the `metadata` field. This field will be removed after 2020-07-31.")
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 OrderClearMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
order: Order
}
type OrderClearPrivateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
order: Order
}
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
}
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
INSUFFICIENT_STOCK
DUPLICATED_INPUT_ITEM
}
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
}
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
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
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
TRACKING_UPDATED
NOTE_ADDED
OTHER
}
input OrderFilterInput {
paymentStatus: [PaymentChargeStatusEnum]
status: [OrderStatusFilter]
customer: String
created: DateRangeInput
search: String
}
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!]!
}
enum OrderSortField {
NUMBER
CREATION_DATE
CUSTOMER
PAYMENT
FULFILLMENT_STATUS
TOTAL
}
input OrderSortingInput {
direction: OrderDirection!
field: OrderSortField!
}
enum OrderStatus {
DRAFT
UNFULFILLED
PARTIALLY_FULFILLED
FULFILLED
CANCELED
}
enum OrderStatusFilter {
READY_TO_FULFILL
READY_TO_CAPTURE
UNFULFILLED
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 OrderUpdateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
order: Order
}
type OrderUpdatePrivateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
order: Order
}
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
slug: String!
created: DateTime!
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
privateMeta: [MetaStore]! @deprecated(reason: "Use the `privetaMetadata` field. This field will be removed after 2020-07-31.")
meta: [MetaStore]! @deprecated(reason: "Use the `metadata` field. This field will be removed after 2020-07-31.")
translation(languageCode: LanguageCodeEnum!): PageTranslation
isPublished: Boolean!
}
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
}
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!
}
enum PageErrorCode {
GRAPHQL_ERROR
INVALID
NOT_FOUND
REQUIRED
UNIQUE
}
input PageFilterInput {
search: String
}
type PageInfo {
hasNextPage: Boolean!
hasPreviousPage: Boolean!
startCursor: String
endCursor: String
}
input PageInput {
slug: String
title: String
content: String
contentJson: JSONString
isPublished: Boolean
publicationDate: String
seo: SeoInput
}
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 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]!
}
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_SERVICE_ACCOUNTS
MANAGE_APPS
MANAGE_DISCOUNTS
MANAGE_PLUGINS
MANAGE_GIFT_CARD
MANAGE_MENUS
MANAGE_ORDERS
MANAGE_PAGES
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!
publicationDate: Date
productType: ProductType!
slug: String!
category: Category
updatedAt: DateTime
chargeTaxes: Boolean!
weight: Weight
availableForPurchase: Date
visibleInListings: Boolean!
defaultVariant: ProductVariant
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
privateMeta: [MetaStore]! @deprecated(reason: "Use the `privetaMetadata` field. This field will be removed after 2020-07-31.")
meta: [MetaStore]! @deprecated(reason: "Use the `metadata` field. This field will be removed after 2020-07-31.")
url: String! @deprecated(reason: "This field will be removed after 2020-07-31.")
thumbnail(size: Int): Image
pricing: ProductPricingInfo
isAvailable: Boolean
minimalVariantPrice: Money
taxType: TaxType
attributes: [SelectedAttribute!]!
purchaseCost: MoneyRange
margin: Margin
imageById(id: ID): ProductImage
variants: [ProductVariant]
images: [ProductImage]
collections: [Collection]
translation(languageCode: LanguageCodeEnum!): ProductTranslation
isAvailableForPurchase: Boolean
isPublished: Boolean!
}
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 ProductBulkPublish {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
count: Int!
productErrors: [ProductError!]!
}
type ProductClearMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
product: Product
}
type ProductClearPrivateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
product: Product
}
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]
publicationDate: Date
category: ID
chargeTaxes: Boolean
collections: [ID]
description: String
descriptionJson: JSONString
isPublished: Boolean
name: String
slug: String
taxCode: String
seo: SeoInput
weight: WeightScalar
sku: String
trackInventory: Boolean
basePrice: PositiveDecimal
visibleInListings: Boolean
productType: ID!
stocks: [StockInput!]
}
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!]
}
enum ProductErrorCode {
ALREADY_EXISTS
ATTRIBUTE_ALREADY_ASSIGNED
ATTRIBUTE_CANNOT_BE_ASSIGNED
ATTRIBUTE_VARIANTS_DISABLED
DUPLICATED_INPUT_ITEM
GRAPHQL_ERROR
INVALID
NOT_PRODUCTS_IMAGE
NOT_PRODUCTS_VARIANT
NOT_FOUND
REQUIRED
UNIQUE
VARIANT_NO_DIGITAL_CONTENT
}
enum ProductFieldEnum {
NAME
DESCRIPTION
PRODUCT_TYPE
CATEGORY
VISIBLE
AVAILABLE_FOR_PURCHASE
SEARCHABLE
PRODUCT_WEIGHT
COLLECTIONS
CHARGE_TAXES
PRODUCT_IMAGES
VARIANT_SKU
VARIANT_PRICE
COST_PRICE
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]
}
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]
publicationDate: Date
category: ID
chargeTaxes: Boolean
collections: [ID]
description: String
descriptionJson: JSONString
isPublished: Boolean
name: String
slug: String
taxCode: String
seo: SeoInput
weight: WeightScalar
sku: String
trackInventory: Boolean
basePrice: PositiveDecimal
visibleInListings: Boolean
}
input ProductOrder {
direction: OrderDirection!
attributeId: ID
field: ProductOrderField
}
enum ProductOrderField {
NAME
PRICE
MINIMAL_PRICE
DATE
TYPE
PUBLISHED
PUBLICATION_DATE
}
type ProductPricingInfo {
onSale: Boolean
discount: TaxedMoney
discountLocalCurrency: TaxedMoney
priceRange: TaxedMoneyRange
priceRangeUndiscounted: TaxedMoneyRange
priceRangeLocalCurrency: TaxedMoneyRange
}
type ProductSetAvailabilityForPurchase {
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]!
privateMeta: [MetaStore]! @deprecated(reason: "Use the `privetaMetadata` field. This field will be removed after 2020-07-31.")
meta: [MetaStore]! @deprecated(reason: "Use the `metadata` field. This field will be removed after 2020-07-31.")
products(before: String, after: String, first: Int, last: Int): ProductCountableConnection
taxRate: TaxRateType
taxType: TaxType
variantAttributes: [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!]!
}
type ProductTypeClearMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
productType: ProductType
}
type ProductTypeClearPrivateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
productType: ProductType
}
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 ProductTypeUpdateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
productType: ProductType
}
type ProductTypeUpdatePrivateMeta {
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 ProductUpdateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
product: Product
}
type ProductUpdatePrivateMeta {
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]!
privateMeta: [MetaStore]! @deprecated(reason: "Use the `privetaMetadata` field. This field will be removed after 2020-07-31.")
meta: [MetaStore]! @deprecated(reason: "Use the `metadata` field. This field will be removed after 2020-07-31.")
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.")
price: Money
pricing: VariantPricingInfo
isAvailable: Boolean @deprecated(reason: "Use the stock field instead. This field will be removed after 2020-07-31.")
attributes: [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: [AttributeValueInput]!
costPrice: PositiveDecimal
price: PositiveDecimal
sku: String!
trackInventory: Boolean
weight: WeightScalar
stocks: [StockInput!]
}
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 ProductVariantClearMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
productVariant: ProductVariant
}
type ProductVariantClearPrivateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
productVariant: ProductVariant
}
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]!
costPrice: PositiveDecimal
price: PositiveDecimal
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]
costPrice: PositiveDecimal
price: PositiveDecimal
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 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
}
type ProductVariantUpdateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
productVariant: ProductVariant
}
type ProductVariantUpdatePrivateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
productErrors: [ProductError!]!
productVariant: ProductVariant
}
type Query {
webhook(id: ID!): Webhook
webhooks(sortBy: WebhookSortingInput, filter: WebhookFilterInput, before: String, after: String, first: Int, last: Int): WebhookCountableConnection @deprecated(reason: "Use webhooks field on app(s) query instead. This field will be removed after 2020-07-31.")
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!
shippingZone(id: ID!): ShippingZone
shippingZones(before: String, after: String, first: Int, last: Int): ShippingZoneCountableConnection
digitalContent(id: ID!): DigitalContent
digitalContents(before: String, after: String, first: Int, last: Int): DigitalContentCountableConnection
attributes(filter: AttributeFilterInput, sortBy: AttributeSortingInput, before: String, after: String, first: Int, last: Int): AttributeCountableConnection
attribute(id: ID!): Attribute
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): Collection
collections(filter: CollectionFilterInput, sortBy: CollectionSortingInput, before: String, after: String, first: Int, last: Int): CollectionCountableConnection
product(id: ID, slug: String): Product
products(filter: ProductFilterInput, sortBy: ProductOrder, stockAvailability: StockAvailability, 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): ProductVariant
productVariants(ids: [ID], filter: ProductVariantFilterInput, before: String, after: String, first: Int, last: Int): ProductVariantCountableConnection
reportProductSales(period: ReportingPeriod!, 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
homepageEvents(before: String, after: String, first: Int, last: Int): OrderEventCountableConnection
order(id: ID!): Order
orders(sortBy: OrderSortingInput, filter: OrderFilterInput, created: ReportingPeriod, status: OrderStatusFilter, 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): TaxedMoney
orderByToken(token: UUID!): Order
menu(id: ID, name: String, slug: String): Menu
menus(sortBy: MenuSortingInput, filter: MenuFilterInput, before: String, after: String, first: Int, last: Int): MenuCountableConnection
menuItem(id: ID!): MenuItem
menuItems(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!): Sale
sales(filter: SaleFilterInput, sortBy: SaleSortingInput, query: String, before: String, after: String, first: Int, last: Int): SaleCountableConnection
voucher(id: ID!): Voucher
vouchers(filter: VoucherFilterInput, sortBy: VoucherSortingInput, query: 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(before: String, after: String, first: Int, last: Int): CheckoutCountableConnection
checkoutLine(id: ID): CheckoutLine
checkoutLines(before: String, after: String, first: Int, last: Int): CheckoutLineCountableConnection
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
serviceAccounts(filter: ServiceAccountFilterInput, sortBy: ServiceAccountSortingInput, before: String, after: String, first: Int, last: Int): ServiceAccountCountableConnection @deprecated(reason: "Use the `apps` query instead. This field will be removed after 2020-07-31.")
serviceAccount(id: ID!): ServiceAccount @deprecated(reason: "Use the `app` query instead. This field will be removed after 2020-07-31.")
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!
value: Float!
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
}
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 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!
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 ServiceAccount implements Node & ObjectWithMetadata {
id: ID!
name: String
created: DateTime
isActive: Boolean
permissions: [Permission]
tokens: [ServiceAccountToken]
privateMetadata: [MetadataItem]!
metadata: [MetadataItem]!
privateMeta: [MetaStore]! @deprecated(reason: "Use the `privetaMetadata` field. This field will be removed after 2020-07-31.")
meta: [MetaStore]! @deprecated(reason: "Use the `metadata` field. This field will be removed after 2020-07-31.")
}
type ServiceAccountClearPrivateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
accountErrors: [AccountError!]!
serviceAccount: ServiceAccount
}
type ServiceAccountCountableConnection {
pageInfo: PageInfo!
edges: [ServiceAccountCountableEdge!]!
totalCount: Int
}
type ServiceAccountCountableEdge {
node: ServiceAccount!
cursor: String!
}
type ServiceAccountCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
authToken: String
accountErrors: [AccountError!]!
serviceAccount: ServiceAccount
}
type ServiceAccountDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
accountErrors: [AccountError!]!
serviceAccount: ServiceAccount
}
input ServiceAccountFilterInput {
search: String
isActive: Boolean
}
input ServiceAccountInput {
name: String
isActive: Boolean
permissions: [PermissionEnum]
}
enum ServiceAccountSortField {
NAME
CREATION_DATE
}
input ServiceAccountSortingInput {
direction: OrderDirection!
field: ServiceAccountSortField!
}
type ServiceAccountToken implements Node {
name: String
authToken: String
id: ID!
}
type ServiceAccountTokenCreate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
authToken: String
accountErrors: [AccountError!]!
serviceAccountToken: ServiceAccountToken
}
type ServiceAccountTokenDelete {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
accountErrors: [AccountError!]!
serviceAccountToken: ServiceAccountToken
}
input ServiceAccountTokenInput {
name: String
serviceAccount: ID!
}
type ServiceAccountUpdate {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
accountErrors: [AccountError!]!
serviceAccount: ServiceAccount
}
type ServiceAccountUpdatePrivateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
accountErrors: [AccountError!]!
serviceAccount: ServiceAccount
}
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!]
}
enum ShippingErrorCode {
ALREADY_EXISTS
GRAPHQL_ERROR
INVALID
MAX_LESS_THAN_MIN
NOT_FOUND
REQUIRED
UNIQUE
DUPLICATED_INPUT_ITEM
}
type ShippingMethod implements Node {
id: ID!
name: String!
price: Money
minimumOrderPrice: Money
maximumOrderPrice: Money
minimumOrderWeight: Weight
maximumOrderWeight: Weight
type: ShippingMethodTypeEnum
translation(languageCode: LanguageCodeEnum!): ShippingMethodTranslation
}
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 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
shippingErrors: [ShippingError!]!
shippingMethod: ShippingMethod
}
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!]!
}
input ShippingPriceInput {
name: String
price: PositiveDecimal
minimumOrderPrice: PositiveDecimal
maximumOrderPrice: PositiveDecimal
minimumOrderWeight: WeightScalar
maximumOrderWeight: WeightScalar
type: ShippingMethodTypeEnum
shippingZone: ID
}
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
shippingErrors: [ShippingError!]!
shippingMethod: ShippingMethod
}
type ShippingZone implements Node {
id: ID!
name: String!
default: Boolean!
priceRange: MoneyRange
countries: [CountryDisplay]
shippingMethods: [ShippingMethod]
warehouses: [Warehouse]
}
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
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
countries: [String]
default: Boolean
addWarehouses: [ID]
removeWarehouses: [ID]
}
type Shop {
availablePaymentGateways(currency: String): [PaymentGateway!]!
geolocalization: Geolocalization
authorizationKeys: [AuthorizationKey]!
countries(languageCode: LanguageCodeEnum): [CountryDisplay!]!
currencies: [String]! @deprecated(reason: "This field will be removed in Saleor 3.0")
defaultCurrency: String! @deprecated(reason: "This field will be removed in Saleor 3.0")
defaultCountry: CountryDisplay
defaultMailSenderName: String
defaultMailSenderAddress: String
description: String
domain: Domain!
homepageCollection: Collection @deprecated(reason: "Use the `collection` query with the `slug` parameter. This field will be removed in Saleor 3.0")
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 {
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 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]!
privateMeta: [MetaStore]! @deprecated(reason: "Use the `privetaMetadata` field. This field will be removed after 2020-07-31.")
meta: [MetaStore]! @deprecated(reason: "Use the `metadata` field. This field will be removed after 2020-07-31.")
addresses: [Address]
checkout: Checkout
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 UserClearMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
accountErrors: [AccountError!]!
user: User
}
type UserClearPrivateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
accountErrors: [AccountError!]!
user: User
}
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 UserUpdateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
accountErrors: [AccountError!]!
user: User
}
type UserUpdatePrivateMeta {
errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.")
accountErrors: [AccountError!]!
user: User
}
type VAT {
countryCode: String!
standardRate: Float
reducedRates: [ReducedRate]!
}
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!
discountValue: Float!
minSpent: Money
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
}
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 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
discountValue: PositiveDecimal
products: [ID]
collections: [ID]
categories: [ID]
minAmountSpent: PositiveDecimal
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!
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!]!
serviceAccount: ServiceAccount! @deprecated(reason: "Use the `app` field instead. This field will be removed after 2020-07-31.")
app: App!
}
type WebhookCountableConnection {
pageInfo: PageInfo!
edges: [WebhookCountableEdge!]!
totalCount: Int
}
type WebhookCountableEdge {
node: Webhook!
cursor: String!
}
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]
serviceAccount: ID
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_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
}
input WebhookFilterInput {
search: String
isActive: Boolean
}
enum WebhookSampleEventTypeEnum {
ORDER_CREATED
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 WebhookSortField {
NAME
SERVICE_ACCOUNT
TARGET_URL
APP
}
input WebhookSortingInput {
direction: OrderDirection!
field: WebhookSortField!
}
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]
serviceAccount: ID
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 | ServiceAccount | App | ProductVariant | Product | ProductType | Collection | Category | ProductImage
type _Service {
sdl: String
}
@kulame it is expected that Entity.java
will be generated as an empty interface because it is union.
And all types (that are part of the union) are extending this interface:
public class Address implements java.io.Serializable, Entity, Node {
private String id;
private String firstName;
...
Issue Description
my graphql is
generate java code
it's a empty interface. and i try to start it by quarkus.
it can't work
Steps to Reproduce
List in detail the exact steps to reproduce the unexpected behavior.
Expected Result
Explain in detail what behavior you expected to happen.
Actual Result
Explain in detail what behavior actually happened.
Your Environment and Setup