AI Commerce Cloud GraphQL API

Public GraphQL schema reference for AI Commerce Cloud integrations.

Browse the live schema

Review available queries, mutations, arguments, input types, and response fields before building an integration.

Build production requests

Use the examples to shape GraphQL POST requests for the production endpoint at https://api.aicommerce.fi/graphql.

Authenticate per tenant

Every request uses tenant credentials and an AI Commerce GraphQL access token issued during onboarding.

Contact

AI Commerce Cloud onboarding

info@petrosoft.fi

API Endpoints
https://api.aicommerce.fi/graphql
Headers
# Required AI Commerce Cloud API access token.
X-GraphQL-Secret: <your-graphql-secret>
# Required tenant identifier.
X-Tenant-ID: your-tenant-id
# Required tenant-specific secret.
X-Tenant-Secret: <your-tenant-secret>
# Required for GraphQL JSON requests.
Content-Type: application/json

Overview

AI Commerce Cloud exposes a single GraphQL API for ecommerce catalog, customer, order, quote, payment, and operational data.

The public reference is generated from the same schema files used by the running API. Field-level behavior, authorization, and tenant data access are enforced by the live API.

Authentication

All requests use the production endpoint:

https://api.aicommerce.fi/graphql

Every request must include these headers:

Header Value
X-GraphQL-Secret API access token issued during onboarding
X-Tenant-ID Tenant identifier issued during onboarding
X-Tenant-Secret Tenant-specific secret issued during onboarding
Content-Type application/json

Do not expose API secrets in browser-side code or public repositories.

Tenant Model

AI Commerce Cloud uses one GraphQL endpoint for all tenants.

Tenant selection is header-based. The API reads X-Tenant-ID and X-Tenant-Secret on each request and routes authorized operations to the matching tenant data.

The schema is shared across tenants. Tenant identity controls data access, not schema shape.

Examples

Fetch products:

query Products {
  products(limit: 5, offset: 0) {
    id
    name
    model
    price
  }
}

Fetch one product:

query Product($id: ID!) {
  product(id: $id) {
    id
    name
    price
    description
  }
}

Fetch categories:

query Categories {
  categories(limit: 10, offset: 0) {
    id
    parentId
    descriptions {
      languageId
      name
    }
  }
}

Fetch orders:

query Orders {
  orders(limit: 5, offset: 0) {
    id
    customerName
    customerEmail
    status
    datePurchased
  }
}

Create an order:

mutation CreateOrder($input: CreateOrderInput!) {
  createOrder(input: $input) {
    id
    status
    customerEmail
  }
}

Onboarding

Access to live tenant data requires onboarding.

Contact info@petrosoft.fi to request API access, tenant credentials, integration support, or rate limit changes.

Queries

_empty

Response

Returns a String

Example

Query
query _empty {
  _empty
}
Response
{"data": {"_empty": "abc123"}}

actionRecorderEntries

Response

Returns an ActionRecorderPage!

Arguments
Name Description
module - String
userId - Int
success - Boolean
limit - Int
offset - Int

Example

Query
query actionRecorderEntries(
  $module: String,
  $userId: Int,
  $success: Boolean,
  $limit: Int,
  $offset: Int
) {
  actionRecorderEntries(
    module: $module,
    userId: $userId,
    success: $success,
    limit: $limit,
    offset: $offset
  ) {
    total
    entries {
      id
      module
      userId
      userName
      identifier
      userAgent
      success
      dateAdded
    }
  }
}
Variables
{
  "module": "abc123",
  "userId": 987,
  "success": false,
  "limit": 123,
  "offset": 987
}
Response
{
  "data": {
    "actionRecorderEntries": {
      "total": 123,
      "entries": [ActionRecorderEntry]
    }
  }
}

addressBookEntries

Response

Returns [AddressBook]

Arguments
Name Description
customerId - ID!
limit - Int
offset - Int

Example

Query
query addressBookEntries(
  $customerId: ID!,
  $limit: Int,
  $offset: Int
) {
  addressBookEntries(
    customerId: $customerId,
    limit: $limit,
    offset: $offset
  ) {
    id
    customerId
    gender
    company
    firstname
    lastname
    streetAddress
    vatid
    postcode
    city
    state
    countryId
    zoneId
    comments
    billingStreetAddress
    billingFirstname
    billingLastname
    billingPostcode
    billingCity
    billingCountryId
    billingCompany
    billingVatid
    billingZoneId
    billingState
    billingOperatorId
    billingInvoiceAddress
    billingReference
    billingReferenceRequired
  }
}
Variables
{
  "customerId": "4",
  "limit": 987,
  "offset": 123
}
Response
{
  "data": {
    "addressBookEntries": [
      {
        "id": "4",
        "customerId": 987,
        "gender": "abc123",
        "company": "abc123",
        "firstname": "xyz789",
        "lastname": "xyz789",
        "streetAddress": "xyz789",
        "vatid": "xyz789",
        "postcode": "abc123",
        "city": "xyz789",
        "state": "xyz789",
        "countryId": 987,
        "zoneId": 123,
        "comments": "xyz789",
        "billingStreetAddress": "abc123",
        "billingFirstname": "abc123",
        "billingLastname": "xyz789",
        "billingPostcode": "xyz789",
        "billingCity": "abc123",
        "billingCountryId": "xyz789",
        "billingCompany": "xyz789",
        "billingVatid": "xyz789",
        "billingZoneId": "abc123",
        "billingState": "xyz789",
        "billingOperatorId": 123,
        "billingInvoiceAddress": "abc123",
        "billingReference": "abc123",
        "billingReferenceRequired": true
      }
    ]
  }
}

addressFormats

Response

Returns [AddressFormat]

Arguments
Name Description
ids - [ID!]
limit - Int
offset - Int

Example

Query
query addressFormats(
  $ids: [ID!],
  $limit: Int,
  $offset: Int
) {
  addressFormats(
    ids: $ids,
    limit: $limit,
    offset: $offset
  ) {
    id
    addressFormat
    addressSummary
  }
}
Variables
{"ids": [4], "limit": 123, "offset": 987}
Response
{
  "data": {
    "addressFormats": [
      {
        "id": "4",
        "addressFormat": "xyz789",
        "addressSummary": "abc123"
      }
    ]
  }
}

adminNotifications

Response

Returns [AdminNotification]

Arguments
Name Description
limit - Int
offset - Int

Example

Query
query adminNotifications(
  $limit: Int,
  $offset: Int
) {
  adminNotifications(
    limit: $limit,
    offset: $offset
  ) {
    id
    errorText
    createdAt
    emailErrorSent
    errorCleared
  }
}
Variables
{"limit": 123, "offset": 987}
Response
{
  "data": {
    "adminNotifications": [
      {
        "id": "4",
        "errorText": "abc123",
        "createdAt": "xyz789",
        "emailErrorSent": false,
        "errorCleared": true
      }
    ]
  }
}

adminTrackingCreate

Response

Returns [AdminTrackingCreate]

Arguments
Name Description
productId - Int
userId - Int
limit - Int
offset - Int

Example

Query
query adminTrackingCreate(
  $productId: Int,
  $userId: Int,
  $limit: Int,
  $offset: Int
) {
  adminTrackingCreate(
    productId: $productId,
    userId: $userId,
    limit: $limit,
    offset: $offset
  ) {
    id
    productId
    userId
    userName
    action
    dateAdded
  }
}
Variables
{"productId": 987, "userId": 987, "limit": 987, "offset": 123}
Response
{
  "data": {
    "adminTrackingCreate": [
      {
        "id": 4,
        "productId": 987,
        "userId": 987,
        "userName": "abc123",
        "action": "abc123",
        "dateAdded": "abc123"
      }
    ]
  }
}

administrators

Response

Returns [Administrator]

Arguments
Name Description
limit - Int
offset - Int

Example

Query
query administrators(
  $limit: Int,
  $offset: Int
) {
  administrators(
    limit: $limit,
    offset: $offset
  ) {
    id
    userName
    email
    twoFactor
    superadmin
    writePermission
    grantAccess
  }
}
Variables
{"limit": 123, "offset": 123}
Response
{
  "data": {
    "administrators": [
      {
        "id": "4",
        "userName": "xyz789",
        "email": "xyz789",
        "twoFactor": true,
        "superadmin": true,
        "writePermission": false,
        "grantAccess": "abc123"
      }
    ]
  }
}

apiProcessQueue

Description

Paginated list of queued API jobs. Filter status accepts 'queued' or 'failed'.

Response

Returns [ApiProcessJob]

Arguments
Name Description
status - String
api - String
endpoint - String
jobId - String
limit - Int
offset - Int

Example

Query
query apiProcessQueue(
  $status: String,
  $api: String,
  $endpoint: String,
  $jobId: String,
  $limit: Int,
  $offset: Int
) {
  apiProcessQueue(
    status: $status,
    api: $api,
    endpoint: $endpoint,
    jobId: $jobId,
    limit: $limit,
    offset: $offset
  ) {
    id
    jobId
    api
    endpoint
    method
    data
    createdAt
    error
    status
  }
}
Variables
{
  "status": "xyz789",
  "api": "xyz789",
  "endpoint": "xyz789",
  "jobId": "abc123",
  "limit": 123,
  "offset": 123
}
Response
{
  "data": {
    "apiProcessQueue": [
      {
        "id": "4",
        "jobId": "xyz789",
        "api": "abc123",
        "endpoint": "xyz789",
        "method": "xyz789",
        "data": {},
        "createdAt": "xyz789",
        "error": "xyz789",
        "status": "xyz789"
      }
    ]
  }
}

availabilities

Response

Returns [Availability]

Arguments
Name Description
languageId - Int

Example

Query
query availabilities($languageId: Int) {
  availabilities(languageId: $languageId) {
    id
    languageId
    name
    hexCode
  }
}
Variables
{"languageId": 123}
Response
{
  "data": {
    "availabilities": [
      {
        "id": 4,
        "languageId": 987,
        "name": "xyz789",
        "hexCode": "abc123"
      }
    ]
  }
}

bankPayments

Response

Returns [BankPayment!]!

Arguments
Name Description
ordersId - Int
invoiceDateFrom - String
invoiceDateTo - String
valueDateFrom - String
valueDateTo - String
limit - Int
offset - Int

Example

Query
query bankPayments(
  $ordersId: Int,
  $invoiceDateFrom: String,
  $invoiceDateTo: String,
  $valueDateFrom: String,
  $valueDateTo: String,
  $limit: Int,
  $offset: Int
) {
  bankPayments(
    ordersId: $ordersId,
    invoiceDateFrom: $invoiceDateFrom,
    invoiceDateTo: $invoiceDateTo,
    valueDateFrom: $valueDateFrom,
    valueDateTo: $valueDateTo,
    limit: $limit,
    offset: $offset
  ) {
    id
    orderId
    invoicePaymentDate
    invoicePaymentValueDate
    amount
  }
}
Variables
{
  "ordersId": 123,
  "invoiceDateFrom": "abc123",
  "invoiceDateTo": "abc123",
  "valueDateFrom": "xyz789",
  "valueDateTo": "abc123",
  "limit": 123,
  "offset": 987
}
Response
{
  "data": {
    "bankPayments": [
      {
        "id": "4",
        "orderId": 123,
        "invoicePaymentDate": "abc123",
        "invoicePaymentValueDate": "abc123",
        "amount": 123.45
      }
    ]
  }
}

bannerHistory

Response

Returns [BannerHistoryEntry!]!

Arguments
Name Description
bannerId - Int!
startDate - String
endDate - String
limit - Int
offset - Int

Example

Query
query bannerHistory(
  $bannerId: Int!,
  $startDate: String,
  $endDate: String,
  $limit: Int,
  $offset: Int
) {
  bannerHistory(
    bannerId: $bannerId,
    startDate: $startDate,
    endDate: $endDate,
    limit: $limit,
    offset: $offset
  ) {
    bannerId
    date
    impressions
    clicks
  }
}
Variables
{
  "bannerId": 987,
  "startDate": "abc123",
  "endDate": "xyz789",
  "limit": 123,
  "offset": 987
}
Response
{
  "data": {
    "bannerHistory": [
      {
        "bannerId": 987,
        "date": "xyz789",
        "impressions": 123,
        "clicks": 987
      }
    ]
  }
}

banners

Response

Returns [Banner]

Arguments
Name Description
limit - Int
offset - Int

Example

Query
query banners(
  $limit: Int,
  $offset: Int
) {
  banners(
    limit: $limit,
    offset: $offset
  ) {
    id
    title
    url
    group
    status
    image
    history {
      impressions
      clicks
    }
    historyByDate {
      bannerId
      date
      impressions
      clicks
    }
  }
}
Variables
{"limit": 123, "offset": 987}
Response
{
  "data": {
    "banners": [
      {
        "id": "4",
        "title": "abc123",
        "url": "xyz789",
        "group": "xyz789",
        "status": 987,
        "image": "abc123",
        "history": BannerHistory,
        "historyByDate": [BannerHistoryEntry]
      }
    ]
  }
}

bannersByGroup

Response

Returns [Banner]

Arguments
Name Description
group - String!
limit - Int
offset - Int

Example

Query
query bannersByGroup(
  $group: String!,
  $limit: Int,
  $offset: Int
) {
  bannersByGroup(
    group: $group,
    limit: $limit,
    offset: $offset
  ) {
    id
    title
    url
    group
    status
    image
    history {
      impressions
      clicks
    }
    historyByDate {
      bannerId
      date
      impressions
      clicks
    }
  }
}
Variables
{
  "group": "xyz789",
  "limit": 987,
  "offset": 987
}
Response
{
  "data": {
    "bannersByGroup": [
      {
        "id": 4,
        "title": "xyz789",
        "url": "xyz789",
        "group": "abc123",
        "status": 123,
        "image": "xyz789",
        "history": BannerHistory,
        "historyByDate": [BannerHistoryEntry]
      }
    ]
  }
}

billingAddresses

Response

Returns [BillingAddress]

Arguments
Name Description
customerId - ID!
limit - Int
offset - Int

Example

Query
query billingAddresses(
  $customerId: ID!,
  $limit: Int,
  $offset: Int
) {
  billingAddresses(
    customerId: $customerId,
    limit: $limit,
    offset: $offset
  ) {
    id
    customerId
    company
    firstname
    lastname
    streetAddress
    postcode
    city
    state
    countryId
    zoneId
    vatid
    operatorId
    invoiceAddress
    reference
    referenceRequired
  }
}
Variables
{"customerId": 4, "limit": 123, "offset": 123}
Response
{
  "data": {
    "billingAddresses": [
      {
        "id": 4,
        "customerId": 987,
        "company": "xyz789",
        "firstname": "abc123",
        "lastname": "xyz789",
        "streetAddress": "abc123",
        "postcode": "abc123",
        "city": "xyz789",
        "state": "xyz789",
        "countryId": "abc123",
        "zoneId": "xyz789",
        "vatid": "xyz789",
        "operatorId": 987,
        "invoiceAddress": "xyz789",
        "reference": "abc123",
        "referenceRequired": true
      }
    ]
  }
}

browseHistory

Response

Returns [BrowseHistory]

Arguments
Name Description
customerId - Int
sessionKey - String
startDate - String
endDate - String
limit - Int
offset - Int

Example

Query
query browseHistory(
  $customerId: Int,
  $sessionKey: String,
  $startDate: String,
  $endDate: String,
  $limit: Int,
  $offset: Int
) {
  browseHistory(
    customerId: $customerId,
    sessionKey: $sessionKey,
    startDate: $startDate,
    endDate: $endDate,
    limit: $limit,
    offset: $offset
  ) {
    id
    customerId
    sessionKey
    loadTimeMsec
    categoryId
    productId
    manufacturerId
    color
    size
    geoipCountry
    ipAddress
    date
    timestamp
    topPicks
    keywords
  }
}
Variables
{
  "customerId": 123,
  "sessionKey": "xyz789",
  "startDate": "xyz789",
  "endDate": "abc123",
  "limit": 987,
  "offset": 123
}
Response
{
  "data": {
    "browseHistory": [
      {
        "id": "4",
        "customerId": 123,
        "sessionKey": "abc123",
        "loadTimeMsec": 987,
        "categoryId": 123,
        "productId": 123,
        "manufacturerId": 123,
        "color": 987,
        "size": 987,
        "geoipCountry": "abc123",
        "ipAddress": "abc123",
        "date": "xyz789",
        "timestamp": 987,
        "topPicks": true,
        "keywords": "abc123"
      }
    ]
  }
}

categories

Description

Paginated list of categories across the full tree.

Response

Returns [Category]

Arguments
Name Description
limit - Int
offset - Int

Example

Query
query categories(
  $limit: Int,
  $offset: Int
) {
  categories(
    limit: $limit,
    offset: $offset
  ) {
    id
    code
    image
    banner
    parentId
    sortOrder
    position
    descriptions {
      languageId
      name
      url
      path
      pathOld
      description
      descriptionTop
      metaTitle
      metaDescription
      featureTitle
      typeTitle
      bannerText
      bannerButton
      bannerUrl
      redirectStatus
    }
  }
}
Variables
{"limit": 987, "offset": 987}
Response
{
  "data": {
    "categories": [
      {
        "id": "4",
        "code": "abc123",
        "image": "abc123",
        "banner": "abc123",
        "parentId": 123,
        "sortOrder": 123,
        "position": 987,
        "descriptions": [CategoryDescription]
      }
    ]
  }
}

category

Description

Fetch a single category by id, optionally localized via languageId.

Response

Returns a Category

Arguments
Name Description
id - ID!
languageId - Int

Example

Query
query category(
  $id: ID!,
  $languageId: Int
) {
  category(
    id: $id,
    languageId: $languageId
  ) {
    id
    code
    image
    banner
    parentId
    sortOrder
    position
    descriptions {
      languageId
      name
      url
      path
      pathOld
      description
      descriptionTop
      metaTitle
      metaDescription
      featureTitle
      typeTitle
      bannerText
      bannerButton
      bannerUrl
      redirectStatus
    }
  }
}
Variables
{"id": 4, "languageId": 987}
Response
{
  "data": {
    "category": {
      "id": "4",
      "code": "abc123",
      "image": "abc123",
      "banner": "xyz789",
      "parentId": 987,
      "sortOrder": 987,
      "position": 123,
      "descriptions": [CategoryDescription]
    }
  }
}

configurationGroups

Response

Returns [ConfigurationGroup]

Example

Query
query configurationGroups {
  configurationGroups {
    id
    title
    description
    sortOrder
    configurations {
      id
      title
      key
      value
      description
      groupId
      sortOrder
      lastModified
      dateAdded
      useFunction
      setFunction
      group {
        ...ConfigurationGroupFragment
      }
    }
  }
}
Response
{
  "data": {
    "configurationGroups": [
      {
        "id": 4,
        "title": "xyz789",
        "description": "abc123",
        "sortOrder": 987,
        "configurations": [Configuration]
      }
    ]
  }
}

configurationGroupsWithSettings

Response

Returns [ConfigurationGroup]

Example

Query
query configurationGroupsWithSettings {
  configurationGroupsWithSettings {
    id
    title
    description
    sortOrder
    configurations {
      id
      title
      key
      value
      description
      groupId
      sortOrder
      lastModified
      dateAdded
      useFunction
      setFunction
      group {
        ...ConfigurationGroupFragment
      }
    }
  }
}
Response
{
  "data": {
    "configurationGroupsWithSettings": [
      {
        "id": "4",
        "title": "xyz789",
        "description": "abc123",
        "sortOrder": 987,
        "configurations": [Configuration]
      }
    ]
  }
}

configurations

Response

Returns [Configuration]

Arguments
Name Description
groupId - Int
limit - Int
offset - Int

Example

Query
query configurations(
  $groupId: Int,
  $limit: Int,
  $offset: Int
) {
  configurations(
    groupId: $groupId,
    limit: $limit,
    offset: $offset
  ) {
    id
    title
    key
    value
    description
    groupId
    sortOrder
    lastModified
    dateAdded
    useFunction
    setFunction
    group {
      id
      title
      description
      sortOrder
      configurations {
        ...ConfigurationFragment
      }
    }
  }
}
Variables
{"groupId": 987, "limit": 987, "offset": 987}
Response
{
  "data": {
    "configurations": [
      {
        "id": 4,
        "title": "abc123",
        "key": "xyz789",
        "value": "abc123",
        "description": "abc123",
        "groupId": 123,
        "sortOrder": 987,
        "lastModified": "xyz789",
        "dateAdded": "xyz789",
        "useFunction": "xyz789",
        "setFunction": "abc123",
        "group": ConfigurationGroup
      }
    ]
  }
}

countries

Response

Returns [Country]

Arguments
Name Description
limit - Int
offset - Int

Example

Query
query countries(
  $limit: Int,
  $offset: Int
) {
  countries(
    limit: $limit,
    offset: $offset
  ) {
    id
    name
    iso2
    iso3
    dutyRate
    dutyLimit
    addressFormatId
    defaultCurrencyId
  }
}
Variables
{"limit": 987, "offset": 987}
Response
{
  "data": {
    "countries": [
      {
        "id": "4",
        "name": "xyz789",
        "iso2": "abc123",
        "iso3": "abc123",
        "dutyRate": 123.45,
        "dutyLimit": 987.65,
        "addressFormatId": 987,
        "defaultCurrencyId": 987
      }
    ]
  }
}

currencies

Response

Returns [Currency]

Arguments
Name Description
limit - Int
offset - Int

Example

Query
query currencies(
  $limit: Int,
  $offset: Int
) {
  currencies(
    limit: $limit,
    offset: $offset
  ) {
    id
    title
    code
    symbolLeft
    symbolRight
    value
    lastUpdated
  }
}
Variables
{"limit": 123, "offset": 987}
Response
{
  "data": {
    "currencies": [
      {
        "id": 4,
        "title": "xyz789",
        "code": "xyz789",
        "symbolLeft": "xyz789",
        "symbolRight": "xyz789",
        "value": 987.65,
        "lastUpdated": "xyz789"
      }
    ]
  }
}

customer

Response

Returns a Customer

Arguments
Name Description
id - ID!

Example

Query
query customer($id: ID!) {
  customer(id: $id) {
    id
    gender
    firstname
    lastname
    emailAddress
    defaultAddressId
    defaultDeliveryAddressId
    telephone
    newsletter
    freeShipping
    admin
    type
    group
    approved
    undeliveredOrders
    blockPayments
    blockShipments
    temporaryCustomer
    emailSent
    apiId
    apiBillingId
    grantWhatsapp
    billingOperatorId
    billingInvoiceAddress
    billingReference
    billingReferenceRequired
    info {
      dateOfLastLogon
      numberOfLogons
      numberOfFailedLogins
      dateOfLastLoginFail
      dateAccountCreated
      dateAccountLastModified
      sourceId
      globalProductNotifications
    }
    addresses {
      id
      gender
      company
      firstname
      lastname
      streetAddress
      vatid
      postcode
      city
      state
      countryId
      zoneId
      comments
      billingStreetAddress
      billingFirstname
      billingLastname
      billingPostcode
      billingCity
      billingCountryId
      billingCompany
      billingVatid
      billingZoneId
      billingState
      billingOperatorId
      billingInvoiceAddress
      billingReference
      billingReferenceRequired
    }
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "customer": {
      "id": "4",
      "gender": "xyz789",
      "firstname": "abc123",
      "lastname": "xyz789",
      "emailAddress": "abc123",
      "defaultAddressId": 987,
      "defaultDeliveryAddressId": 123,
      "telephone": "abc123",
      "newsletter": false,
      "freeShipping": 123.45,
      "admin": 123,
      "type": 987,
      "group": "abc123",
      "approved": false,
      "undeliveredOrders": 987,
      "blockPayments": "abc123",
      "blockShipments": "abc123",
      "temporaryCustomer": false,
      "emailSent": false,
      "apiId": "abc123",
      "apiBillingId": 987,
      "grantWhatsapp": false,
      "billingOperatorId": 123,
      "billingInvoiceAddress": "xyz789",
      "billingReference": "abc123",
      "billingReferenceRequired": false,
      "info": CustomerInfo,
      "addresses": [Address]
    }
  }
}

customerByEmail

Response

Returns a Customer

Arguments
Name Description
emailAddress - String!

Example

Query
query customerByEmail($emailAddress: String!) {
  customerByEmail(emailAddress: $emailAddress) {
    id
    gender
    firstname
    lastname
    emailAddress
    defaultAddressId
    defaultDeliveryAddressId
    telephone
    newsletter
    freeShipping
    admin
    type
    group
    approved
    undeliveredOrders
    blockPayments
    blockShipments
    temporaryCustomer
    emailSent
    apiId
    apiBillingId
    grantWhatsapp
    billingOperatorId
    billingInvoiceAddress
    billingReference
    billingReferenceRequired
    info {
      dateOfLastLogon
      numberOfLogons
      numberOfFailedLogins
      dateOfLastLoginFail
      dateAccountCreated
      dateAccountLastModified
      sourceId
      globalProductNotifications
    }
    addresses {
      id
      gender
      company
      firstname
      lastname
      streetAddress
      vatid
      postcode
      city
      state
      countryId
      zoneId
      comments
      billingStreetAddress
      billingFirstname
      billingLastname
      billingPostcode
      billingCity
      billingCountryId
      billingCompany
      billingVatid
      billingZoneId
      billingState
      billingOperatorId
      billingInvoiceAddress
      billingReference
      billingReferenceRequired
    }
  }
}
Variables
{"emailAddress": "xyz789"}
Response
{
  "data": {
    "customerByEmail": {
      "id": "4",
      "gender": "abc123",
      "firstname": "xyz789",
      "lastname": "abc123",
      "emailAddress": "xyz789",
      "defaultAddressId": 123,
      "defaultDeliveryAddressId": 987,
      "telephone": "abc123",
      "newsletter": false,
      "freeShipping": 123.45,
      "admin": 987,
      "type": 123,
      "group": "abc123",
      "approved": true,
      "undeliveredOrders": 123,
      "blockPayments": "xyz789",
      "blockShipments": "xyz789",
      "temporaryCustomer": false,
      "emailSent": false,
      "apiId": "abc123",
      "apiBillingId": 123,
      "grantWhatsapp": false,
      "billingOperatorId": 123,
      "billingInvoiceAddress": "xyz789",
      "billingReference": "abc123",
      "billingReferenceRequired": true,
      "info": CustomerInfo,
      "addresses": [Address]
    }
  }
}

customerGroupPriceList

Response

Returns [CustomerGroupPriceRule]

Arguments
Name Description
customerGroupId - ID
productId - Int
validOn - String
limit - Int
offset - Int

Example

Query
query customerGroupPriceList(
  $customerGroupId: ID,
  $productId: Int,
  $validOn: String,
  $limit: Int,
  $offset: Int
) {
  customerGroupPriceList(
    customerGroupId: $customerGroupId,
    productId: $productId,
    validOn: $validOn,
    limit: $limit,
    offset: $offset
  ) {
    id
    groupId
    productId
    productStockId
    price
    validFrom
    validTo
    customerGroup {
      id
      description
      discountAmount
      discountType
      dateStart
      dateEnd
      minOrder
      minOrderType
      customerType
      discountedProducts
      groupsType
      dynamicDiscounts {
        ...CustomerGroupDynamicDiscountFragment
      }
      priceList {
        ...CustomerGroupPriceRuleFragment
      }
    }
    product {
      id
      name
      model
      image
      price
      description
      shortDescription
      material
    }
  }
}
Variables
{
  "customerGroupId": "4",
  "productId": 123,
  "validOn": "abc123",
  "limit": 123,
  "offset": 987
}
Response
{
  "data": {
    "customerGroupPriceList": [
      {
        "id": 4,
        "groupId": "abc123",
        "productId": 987,
        "productStockId": 123,
        "price": 987.65,
        "validFrom": "abc123",
        "validTo": "abc123",
        "customerGroup": CustomerGroup,
        "product": Product
      }
    ]
  }
}

customerGroups

Response

Returns [CustomerGroup]

Arguments
Name Description
type - String
activeOnly - Boolean

Example

Query
query customerGroups(
  $type: String,
  $activeOnly: Boolean
) {
  customerGroups(
    type: $type,
    activeOnly: $activeOnly
  ) {
    id
    description
    discountAmount
    discountType
    dateStart
    dateEnd
    minOrder
    minOrderType
    customerType
    discountedProducts
    groupsType
    dynamicDiscounts {
      id
      groupId
      amount
      dateStart
      dateEnd
      manufacturer
      category
      sort
    }
    priceList {
      id
      groupId
      productId
      productStockId
      price
      validFrom
      validTo
      customerGroup {
        ...CustomerGroupFragment
      }
      product {
        ...ProductFragment
      }
    }
  }
}
Variables
{"type": "abc123", "activeOnly": false}
Response
{
  "data": {
    "customerGroups": [
      {
        "id": 4,
        "description": "abc123",
        "discountAmount": 987.65,
        "discountType": "xyz789",
        "dateStart": "abc123",
        "dateEnd": "xyz789",
        "minOrder": 987.65,
        "minOrderType": "abc123",
        "customerType": "abc123",
        "discountedProducts": 123,
        "groupsType": "xyz789",
        "dynamicDiscounts": [
          CustomerGroupDynamicDiscount
        ],
        "priceList": [CustomerGroupPriceRule]
      }
    ]
  }
}

customerInfo

Response

Returns a CustomerInfo

Arguments
Name Description
customerId - ID!

Example

Query
query customerInfo($customerId: ID!) {
  customerInfo(customerId: $customerId) {
    dateOfLastLogon
    numberOfLogons
    numberOfFailedLogins
    dateOfLastLoginFail
    dateAccountCreated
    dateAccountLastModified
    sourceId
    globalProductNotifications
  }
}
Variables
{"customerId": 4}
Response
{
  "data": {
    "customerInfo": {
      "dateOfLastLogon": "abc123",
      "numberOfLogons": 987,
      "numberOfFailedLogins": 987,
      "dateOfLastLoginFail": "xyz789",
      "dateAccountCreated": "abc123",
      "dateAccountLastModified": "xyz789",
      "sourceId": 987,
      "globalProductNotifications": 987
    }
  }
}

customerPrice

Response

Returns a CustomerPrice

Arguments
Name Description
customerId - Int!
productId - Int!
validOn - String

Example

Query
query customerPrice(
  $customerId: Int!,
  $productId: Int!,
  $validOn: String
) {
  customerPrice(
    customerId: $customerId,
    productId: $productId,
    validOn: $validOn
  ) {
    id
    customerId
    productId
    price
    currency
    validFrom
    validTo
  }
}
Variables
{
  "customerId": 987,
  "productId": 123,
  "validOn": "xyz789"
}
Response
{
  "data": {
    "customerPrice": {
      "id": "4",
      "customerId": 123,
      "productId": 123,
      "price": 123.45,
      "currency": "xyz789",
      "validFrom": "xyz789",
      "validTo": "xyz789"
    }
  }
}

customers

Response

Returns [Customer]

Arguments
Name Description
limit - Int
offset - Int

Example

Query
query customers(
  $limit: Int,
  $offset: Int
) {
  customers(
    limit: $limit,
    offset: $offset
  ) {
    id
    gender
    firstname
    lastname
    emailAddress
    defaultAddressId
    defaultDeliveryAddressId
    telephone
    newsletter
    freeShipping
    admin
    type
    group
    approved
    undeliveredOrders
    blockPayments
    blockShipments
    temporaryCustomer
    emailSent
    apiId
    apiBillingId
    grantWhatsapp
    billingOperatorId
    billingInvoiceAddress
    billingReference
    billingReferenceRequired
    info {
      dateOfLastLogon
      numberOfLogons
      numberOfFailedLogins
      dateOfLastLoginFail
      dateAccountCreated
      dateAccountLastModified
      sourceId
      globalProductNotifications
    }
    addresses {
      id
      gender
      company
      firstname
      lastname
      streetAddress
      vatid
      postcode
      city
      state
      countryId
      zoneId
      comments
      billingStreetAddress
      billingFirstname
      billingLastname
      billingPostcode
      billingCity
      billingCountryId
      billingCompany
      billingVatid
      billingZoneId
      billingState
      billingOperatorId
      billingInvoiceAddress
      billingReference
      billingReferenceRequired
    }
  }
}
Variables
{"limit": 123, "offset": 987}
Response
{
  "data": {
    "customers": [
      {
        "id": 4,
        "gender": "xyz789",
        "firstname": "abc123",
        "lastname": "abc123",
        "emailAddress": "xyz789",
        "defaultAddressId": 987,
        "defaultDeliveryAddressId": 987,
        "telephone": "abc123",
        "newsletter": true,
        "freeShipping": 987.65,
        "admin": 123,
        "type": 987,
        "group": "xyz789",
        "approved": false,
        "undeliveredOrders": 123,
        "blockPayments": "xyz789",
        "blockShipments": "xyz789",
        "temporaryCustomer": false,
        "emailSent": true,
        "apiId": "abc123",
        "apiBillingId": 987,
        "grantWhatsapp": true,
        "billingOperatorId": 123,
        "billingInvoiceAddress": "abc123",
        "billingReference": "abc123",
        "billingReferenceRequired": false,
        "info": CustomerInfo,
        "addresses": [Address]
      }
    ]
  }
}

customersApi

Response

Returns [CustomersApiCustomer!]!

Arguments
Name Description
asiakaskoodi - String
email - String
alennusryhma - String
limit - Int
offset - Int

Example

Query
query customersApi(
  $asiakaskoodi: String,
  $email: String,
  $alennusryhma: String,
  $limit: Int,
  $offset: Int
) {
  customersApi(
    asiakaskoodi: $asiakaskoodi,
    email: $email,
    alennusryhma: $alennusryhma,
    limit: $limit,
    offset: $offset
  ) {
    asiakaskoodi
    name
    secondaryName
    addressLine1
    addressLine2
    addressLine3
    deliveryName1
    deliveryName2
    deliveryName3
    billingCustomerId
    paymentTerm
    customerGroup
    chain
    salesCode
    creditLimit
    deliveryBlock
    email
    website
    phone
    fax
    deliveryMethod
    discountGroup
    discountPercent
    secondaryDiscountPercent
    languageCode
    comment1
    comment2
    contactPerson
    contactPersonId
    lastLoginAt
    vatLiability
    currency
    modifiedAt
    businessId
    billingAddress
    intermediaryService
    netvisorKey
  }
}
Variables
{
  "asiakaskoodi": "xyz789",
  "email": "abc123",
  "alennusryhma": "abc123",
  "limit": 123,
  "offset": 123
}
Response
{
  "data": {
    "customersApi": [
      {
        "asiakaskoodi": "abc123",
        "name": "xyz789",
        "secondaryName": "abc123",
        "addressLine1": "xyz789",
        "addressLine2": "abc123",
        "addressLine3": "abc123",
        "deliveryName1": "abc123",
        "deliveryName2": "abc123",
        "deliveryName3": "xyz789",
        "billingCustomerId": 123,
        "paymentTerm": "abc123",
        "customerGroup": "abc123",
        "chain": "xyz789",
        "salesCode": "abc123",
        "creditLimit": "abc123",
        "deliveryBlock": "abc123",
        "email": "xyz789",
        "website": "abc123",
        "phone": "xyz789",
        "fax": "abc123",
        "deliveryMethod": "xyz789",
        "discountGroup": "abc123",
        "discountPercent": 987.65,
        "secondaryDiscountPercent": 987.65,
        "languageCode": "xyz789",
        "comment1": "xyz789",
        "comment2": "abc123",
        "contactPerson": "xyz789",
        "contactPersonId": 987,
        "lastLoginAt": "abc123",
        "vatLiability": "abc123",
        "currency": "xyz789",
        "modifiedAt": "abc123",
        "businessId": "xyz789",
        "billingAddress": "xyz789",
        "intermediaryService": "abc123",
        "netvisorKey": 123
      }
    ]
  }
}

customersBasket

Response

Returns [CustomersBasketItem]

Arguments
Name Description
customersId - ID!
cartId - String

Example

Query
query customersBasket(
  $customersId: ID!,
  $cartId: String
) {
  customersBasket(
    customersId: $customersId,
    cartId: $cartId
  ) {
    id
    cartId
    customersId
    itemId
    productId
    variants
    productOptions
    comment
    customOptions
    quantity
    specialPrice
    bundleId
    includes
    dateAdded
    emailSent
    emailLast
    variableImage
    allowSubstitute
  }
}
Variables
{
  "customersId": "4",
  "cartId": "abc123"
}
Response
{
  "data": {
    "customersBasket": [
      {
        "id": "4",
        "cartId": "xyz789",
        "customersId": 987,
        "itemId": "abc123",
        "productId": 987,
        "variants": "xyz789",
        "productOptions": "xyz789",
        "comment": "abc123",
        "customOptions": "abc123",
        "quantity": 123,
        "specialPrice": 123.45,
        "bundleId": "xyz789",
        "includes": "xyz789",
        "dateAdded": "abc123",
        "emailSent": 123,
        "emailLast": "xyz789",
        "variableImage": "xyz789",
        "allowSubstitute": false
      }
    ]
  }
}

customersBlacklist

Response

Returns [CustomerBlacklistEntry!]!

Arguments
Name Description
customerId - Int
status - Int
limit - Int
offset - Int

Example

Query
query customersBlacklist(
  $customerId: Int,
  $status: Int,
  $limit: Int,
  $offset: Int
) {
  customersBlacklist(
    customerId: $customerId,
    status: $status,
    limit: $limit,
    offset: $offset
  ) {
    id
    customerId
    status
    reason
    lastModified
  }
}
Variables
{"customerId": 987, "status": 987, "limit": 123, "offset": 123}
Response
{
  "data": {
    "customersBlacklist": [
      {
        "id": 4,
        "customerId": 123,
        "status": 987,
        "reason": "abc123",
        "lastModified": "xyz789"
      }
    ]
  }
}

customersBraintreeTokens

Response

Returns [CustomersBraintreeToken!]!

Arguments
Name Description
customersId - Int!
cardType - String
limit - Int
offset - Int

Example

Query
query customersBraintreeTokens(
  $customersId: Int!,
  $cardType: String,
  $limit: Int,
  $offset: Int
) {
  customersBraintreeTokens(
    customersId: $customersId,
    cardType: $cardType,
    limit: $limit,
    offset: $offset
  ) {
    id
    customersId
    braintreeToken
    cardType
    numberFiltered
    expiryDate
    dateAdded
  }
}
Variables
{
  "customersId": 987,
  "cardType": "abc123",
  "limit": 987,
  "offset": 987
}
Response
{
  "data": {
    "customersBraintreeTokens": [
      {
        "id": "4",
        "customersId": 123,
        "braintreeToken": "abc123",
        "cardType": "abc123",
        "numberFiltered": "abc123",
        "expiryDate": "abc123",
        "dateAdded": "abc123"
      }
    ]
  }
}

customersHistory

Response

Returns [CustomerHistoryEntry!]!

Arguments
Name Description
customerId - Int!
userId - Int
sourceTable - String
limit - Int
offset - Int

Example

Query
query customersHistory(
  $customerId: Int!,
  $userId: Int,
  $sourceTable: String,
  $limit: Int,
  $offset: Int
) {
  customersHistory(
    customerId: $customerId,
    userId: $userId,
    sourceTable: $sourceTable,
    limit: $limit,
    offset: $offset
  ) {
    id
    customerId
    addressBookId
    userId
    userName
    sourceTable
    fieldName
    oldValue
    newValue
    page
    dateAdded
  }
}
Variables
{
  "customerId": 987,
  "userId": 123,
  "sourceTable": "xyz789",
  "limit": 123,
  "offset": 987
}
Response
{
  "data": {
    "customersHistory": [
      {
        "id": "4",
        "customerId": 987,
        "addressBookId": 123,
        "userId": 123,
        "userName": "xyz789",
        "sourceTable": "xyz789",
        "fieldName": "xyz789",
        "oldValue": "xyz789",
        "newValue": "abc123",
        "page": "abc123",
        "dateAdded": "abc123"
      }
    ]
  }
}

customersPrices

Response

Returns [CustomerPrice!]!

Arguments
Name Description
customerId - Int
productId - Int
validOn - String
limit - Int
offset - Int

Example

Query
query customersPrices(
  $customerId: Int,
  $productId: Int,
  $validOn: String,
  $limit: Int,
  $offset: Int
) {
  customersPrices(
    customerId: $customerId,
    productId: $productId,
    validOn: $validOn,
    limit: $limit,
    offset: $offset
  ) {
    id
    customerId
    productId
    price
    currency
    validFrom
    validTo
  }
}
Variables
{
  "customerId": 123,
  "productId": 123,
  "validOn": "xyz789",
  "limit": 987,
  "offset": 123
}
Response
{
  "data": {
    "customersPrices": [
      {
        "id": 4,
        "customerId": 123,
        "productId": 987,
        "price": 123.45,
        "currency": "xyz789",
        "validFrom": "xyz789",
        "validTo": "abc123"
      }
    ]
  }
}

deliveryAddresses

Response

Returns [DeliveryAddress]

Arguments
Name Description
customerId - ID!
limit - Int
offset - Int
includeLegacy - Boolean

Example

Query
query deliveryAddresses(
  $customerId: ID!,
  $limit: Int,
  $offset: Int,
  $includeLegacy: Boolean
) {
  deliveryAddresses(
    customerId: $customerId,
    limit: $limit,
    offset: $offset,
    includeLegacy: $includeLegacy
  ) {
    id
    customerId
    gender
    company
    firstname
    lastname
    streetAddress
    vatid
    postcode
    city
    state
    countryId
    zoneId
    comments
    legacyAddressBookId
    legacyAddress {
      id
      customerId
      gender
      company
      firstname
      lastname
      streetAddress
      vatid
      postcode
      city
      state
      countryId
      zoneId
      comments
      billingStreetAddress
      billingFirstname
      billingLastname
      billingPostcode
      billingCity
      billingCountryId
      billingCompany
      billingVatid
      billingZoneId
      billingState
      billingOperatorId
      billingInvoiceAddress
      billingReference
      billingReferenceRequired
    }
  }
}
Variables
{"customerId": 4, "limit": 123, "offset": 987, "includeLegacy": true}
Response
{
  "data": {
    "deliveryAddresses": [
      {
        "id": "4",
        "customerId": 123,
        "gender": "xyz789",
        "company": "abc123",
        "firstname": "abc123",
        "lastname": "xyz789",
        "streetAddress": "abc123",
        "vatid": "xyz789",
        "postcode": "abc123",
        "city": "xyz789",
        "state": "xyz789",
        "countryId": 987,
        "zoneId": 123,
        "comments": "xyz789",
        "legacyAddressBookId": 123,
        "legacyAddress": AddressBook
      }
    ]
  }
}

discountCoupon

Response

Returns a DiscountCoupon

Arguments
Name Description
id - ID!

Example

Query
query discountCoupon($id: ID!) {
  discountCoupon(id: $id) {
    id
    description
    amount
    discountType
    dateStart
    dateEnd
    maxUse
    minOrder
    minOrderType
    numberAvailable
    customerType
    discountedProducts
    discountedProductsOld
    allowedProducts
    categories
    products
    customers
    orders
    manufacturers
    shippingMethods
    zones
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "discountCoupon": {
      "id": "4",
      "description": "xyz789",
      "amount": 987.65,
      "discountType": "abc123",
      "dateStart": "xyz789",
      "dateEnd": "xyz789",
      "maxUse": 987,
      "minOrder": 987.65,
      "minOrderType": "xyz789",
      "numberAvailable": 123,
      "customerType": "xyz789",
      "discountedProducts": 987,
      "discountedProductsOld": 987,
      "allowedProducts": "abc123",
      "categories": [123],
      "products": [987],
      "customers": [987],
      "orders": [987],
      "manufacturers": [987],
      "shippingMethods": ["abc123"],
      "zones": [987]
    }
  }
}

discountCoupons

Response

Returns [DiscountCoupon]

Arguments
Name Description
limit - Int
offset - Int

Example

Query
query discountCoupons(
  $limit: Int,
  $offset: Int
) {
  discountCoupons(
    limit: $limit,
    offset: $offset
  ) {
    id
    description
    amount
    discountType
    dateStart
    dateEnd
    maxUse
    minOrder
    minOrderType
    numberAvailable
    customerType
    discountedProducts
    discountedProductsOld
    allowedProducts
    categories
    products
    customers
    orders
    manufacturers
    shippingMethods
    zones
  }
}
Variables
{"limit": 987, "offset": 123}
Response
{
  "data": {
    "discountCoupons": [
      {
        "id": 4,
        "description": "abc123",
        "amount": 123.45,
        "discountType": "abc123",
        "dateStart": "abc123",
        "dateEnd": "abc123",
        "maxUse": 987,
        "minOrder": 123.45,
        "minOrderType": "xyz789",
        "numberAvailable": 987,
        "customerType": "xyz789",
        "discountedProducts": 123,
        "discountedProductsOld": 123,
        "allowedProducts": "abc123",
        "categories": [123],
        "products": [987],
        "customers": [123],
        "orders": [987],
        "manufacturers": [987],
        "shippingMethods": ["abc123"],
        "zones": [123]
      }
    ]
  }
}

discountCouponsToOrders

Response

Returns [DiscountCouponOrderLink]

Arguments
Name Description
orderId - ID
couponCode - ID
limit - Int
offset - Int

Example

Query
query discountCouponsToOrders(
  $orderId: ID,
  $couponCode: ID,
  $limit: Int,
  $offset: Int
) {
  discountCouponsToOrders(
    orderId: $orderId,
    couponCode: $couponCode,
    limit: $limit,
    offset: $offset
  ) {
    couponCode
    orderId
    coupon {
      id
      description
      amount
      discountType
      dateStart
      dateEnd
      maxUse
      minOrder
      minOrderType
      numberAvailable
      customerType
      discountedProducts
      discountedProductsOld
      allowedProducts
      categories
      products
      customers
      orders
      manufacturers
      shippingMethods
      zones
    }
    order {
      id
      customerId
      customerName
      customerEmail
      customer {
        ...OrderPartyFragment
      }
      deliveryAddress {
        ...OrderPartyFragment
      }
      billingAddress {
        ...OrderPartyFragment
      }
      status
      datePurchased
      lastModified
      currency
      currencyValue
      paymentMethod
      shippingMethod
      shippingCost
      trackingCode
      warehouseCode
      discountCoupons {
        ...DiscountCouponFragment
      }
      items {
        ...OrderItemFragment
      }
      totals {
        ...OrderTotalFragment
      }
      bankPayments {
        ...BankPaymentFragment
      }
      vivawalletPayments {
        ...OrderVivawalletPaymentFragment
      }
    }
  }
}
Variables
{"orderId": 4, "couponCode": 4, "limit": 987, "offset": 123}
Response
{
  "data": {
    "discountCouponsToOrders": [
      {
        "couponCode": "4",
        "orderId": "4",
        "coupon": DiscountCoupon,
        "order": Order
      }
    ]
  }
}

domains

Response

Returns [Domain]

Arguments
Name Description
locale - String
limit - Int
offset - Int

Example

Query
query domains(
  $locale: String,
  $limit: Int,
  $offset: Int
) {
  domains(
    locale: $locale,
    limit: $limit,
    offset: $offset
  ) {
    id
    languageId
    code
    hreflang
    domain
    cctld
    flag
    sortOrder
    googlePixel
    googleApiSecret
    adwordsPixel
    adwordsPhone
    adwordsPurchase
    adwordsContact
    adwordsQuote
    metaPixel
    metaApiSecret
    tiktokPixel
    tiktokApiSecret
    msAdsPixel
    msAdsPhone
    msAdsContact
    msAdsPurchase
    msAdsQuote
    pinterestPixel
    wpDomain
    openaiChatInstructions
    openaiVectorStoreId
    openaiChatAssistantId
  }
}
Variables
{
  "locale": "xyz789",
  "limit": 987,
  "offset": 123
}
Response
{
  "data": {
    "domains": [
      {
        "id": 4,
        "languageId": 123,
        "code": "abc123",
        "hreflang": "xyz789",
        "domain": "abc123",
        "cctld": "abc123",
        "flag": "abc123",
        "sortOrder": 987,
        "googlePixel": "xyz789",
        "googleApiSecret": "xyz789",
        "adwordsPixel": "abc123",
        "adwordsPhone": "xyz789",
        "adwordsPurchase": "xyz789",
        "adwordsContact": "xyz789",
        "adwordsQuote": "abc123",
        "metaPixel": "xyz789",
        "metaApiSecret": "abc123",
        "tiktokPixel": "xyz789",
        "tiktokApiSecret": "xyz789",
        "msAdsPixel": "abc123",
        "msAdsPhone": "xyz789",
        "msAdsContact": "xyz789",
        "msAdsPurchase": "abc123",
        "msAdsQuote": "xyz789",
        "pinterestPixel": "xyz789",
        "wpDomain": "xyz789",
        "openaiChatInstructions": "abc123",
        "openaiVectorStoreId": "abc123",
        "openaiChatAssistantId": "abc123"
      }
    ]
  }
}

faqCategories

Response

Returns [FaqCategory]

Arguments
Name Description
languageId - Int
visibleOnly - Boolean
includeHiddenQuestions - Boolean
sortByOrder - Boolean

Example

Query
query faqCategories(
  $languageId: Int,
  $visibleOnly: Boolean,
  $includeHiddenQuestions: Boolean,
  $sortByOrder: Boolean
) {
  faqCategories(
    languageId: $languageId,
    visibleOnly: $visibleOnly,
    includeHiddenQuestions: $includeHiddenQuestions,
    sortByOrder: $sortByOrder
  ) {
    id
    icon
    image
    visibility
    googleIndex
    sortOrder
    descriptions {
      languageId
      name
      url
      description
      metaTitle
      metaDescription
    }
    questions {
      id
      image
      sortOrder
      visibility
      googleIndex
      enableUrl
      categories
      descriptions {
        ...FaqQuestionDescriptionFragment
      }
    }
  }
}
Variables
{
  "languageId": 987,
  "visibleOnly": true,
  "includeHiddenQuestions": false,
  "sortByOrder": true
}
Response
{
  "data": {
    "faqCategories": [
      {
        "id": 4,
        "icon": "abc123",
        "image": "abc123",
        "visibility": 987,
        "googleIndex": 987,
        "sortOrder": 987,
        "descriptions": [FaqCategoryDescription],
        "questions": [FaqQuestion]
      }
    ]
  }
}

faqQuestion

Response

Returns a FaqQuestion

Arguments
Name Description
id - ID
slug - String
languageId - Int
visibleOnly - Boolean

Example

Query
query faqQuestion(
  $id: ID,
  $slug: String,
  $languageId: Int,
  $visibleOnly: Boolean
) {
  faqQuestion(
    id: $id,
    slug: $slug,
    languageId: $languageId,
    visibleOnly: $visibleOnly
  ) {
    id
    image
    sortOrder
    visibility
    googleIndex
    enableUrl
    categories
    descriptions {
      languageId
      question
      answer
      shortAnswer
      url
      metaTitle
      metaDescription
    }
  }
}
Variables
{
  "id": "4",
  "slug": "abc123",
  "languageId": 987,
  "visibleOnly": false
}
Response
{
  "data": {
    "faqQuestion": {
      "id": 4,
      "image": "abc123",
      "sortOrder": 987,
      "visibility": 123,
      "googleIndex": 123,
      "enableUrl": 987,
      "categories": [987],
      "descriptions": [FaqQuestionDescription]
    }
  }
}

languages

Response

Returns [Language]

Arguments
Name Description
limit - Int
offset - Int

Example

Query
query languages(
  $limit: Int,
  $offset: Int
) {
  languages(
    limit: $limit,
    offset: $offset
  ) {
    id
    code
    name
    metadata {
      image
      directory
    }
  }
}
Variables
{"limit": 123, "offset": 987}
Response
{
  "data": {
    "languages": [
      {
        "id": 4,
        "code": "xyz789",
        "name": "abc123",
        "metadata": LanguageMetadata
      }
    ]
  }
}

manufacturer

Description

Fetch a single manufacturer by id, optionally localized via languageId.

Response

Returns a Manufacturer

Arguments
Name Description
id - ID!
languageId - Int

Example

Query
query manufacturer(
  $id: ID!,
  $languageId: Int
) {
  manufacturer(
    id: $id,
    languageId: $languageId
  ) {
    id
    name
    code
    image
    brandPageImage
    listingImage
    sortOrder
    status
    dateAdded
    lastModified
    fitValue
    specialDiscount
    cmsDescription
    countryApprovedProduct
    displayFrontpage
    infos {
      languageId
      urlClicked
      dateLastClick
      description
      descriptionTop
    }
  }
}
Variables
{"id": "4", "languageId": 123}
Response
{
  "data": {
    "manufacturer": {
      "id": "4",
      "name": "xyz789",
      "code": "xyz789",
      "image": "xyz789",
      "brandPageImage": "xyz789",
      "listingImage": "abc123",
      "sortOrder": 987,
      "status": 123,
      "dateAdded": "abc123",
      "lastModified": "abc123",
      "fitValue": "abc123",
      "specialDiscount": 123,
      "cmsDescription": 123,
      "countryApprovedProduct": "xyz789",
      "displayFrontpage": 987,
      "infos": [ManufacturerInfo]
    }
  }
}

manufacturers

Description

Paginated list of manufacturers / brands.

Response

Returns [Manufacturer]

Arguments
Name Description
limit - Int
offset - Int

Example

Query
query manufacturers(
  $limit: Int,
  $offset: Int
) {
  manufacturers(
    limit: $limit,
    offset: $offset
  ) {
    id
    name
    code
    image
    brandPageImage
    listingImage
    sortOrder
    status
    dateAdded
    lastModified
    fitValue
    specialDiscount
    cmsDescription
    countryApprovedProduct
    displayFrontpage
    infos {
      languageId
      urlClicked
      dateLastClick
      description
      descriptionTop
    }
  }
}
Variables
{"limit": 123, "offset": 123}
Response
{
  "data": {
    "manufacturers": [
      {
        "id": "4",
        "name": "xyz789",
        "code": "xyz789",
        "image": "xyz789",
        "brandPageImage": "abc123",
        "listingImage": "xyz789",
        "sortOrder": 987,
        "status": 987,
        "dateAdded": "xyz789",
        "lastModified": "xyz789",
        "fitValue": "abc123",
        "specialDiscount": 987,
        "cmsDescription": 987,
        "countryApprovedProduct": "abc123",
        "displayFrontpage": 123,
        "infos": [ManufacturerInfo]
      }
    ]
  }
}

order

Response

Returns an Order

Arguments
Name Description
id - ID!

Example

Query
query order($id: ID!) {
  order(id: $id) {
    id
    customerId
    customerName
    customerEmail
    customer {
      name
      company
      vatId
      streetAddress
      city
      postcode
      state
      country
      telephone
      emailAddress
      addressFormatId
      invoiceAddress
      operatorId
      reference
    }
    deliveryAddress {
      name
      company
      vatId
      streetAddress
      city
      postcode
      state
      country
      telephone
      emailAddress
      addressFormatId
      invoiceAddress
      operatorId
      reference
    }
    billingAddress {
      name
      company
      vatId
      streetAddress
      city
      postcode
      state
      country
      telephone
      emailAddress
      addressFormatId
      invoiceAddress
      operatorId
      reference
    }
    status
    datePurchased
    lastModified
    currency
    currencyValue
    paymentMethod
    shippingMethod
    shippingCost
    trackingCode
    warehouseCode
    discountCoupons {
      id
      description
      amount
      discountType
      dateStart
      dateEnd
      maxUse
      minOrder
      minOrderType
      numberAvailable
      customerType
      discountedProducts
      discountedProductsOld
      allowedProducts
      categories
      products
      customers
      orders
      manufacturers
      shippingMethods
      zones
    }
    items {
      id
      orderId
      productId
      productModel
      productEan
      productName
      quantity
      quantityReturned
      price
      originalPrice
      tax
      stockVariants
      lineType
      variants {
        ...OrderItemVariantFragment
      }
    }
    totals {
      id
      orderId
      title
      text
      value
      valueUnreturned
      class
      sortOrder
    }
    bankPayments {
      id
      orderId
      invoicePaymentDate
      invoicePaymentValueDate
      amount
    }
    vivawalletPayments {
      id
      orderId
      customerId
      paymentMethod
      notificationId
      orderCode
      transactionUuid
      sessionId
    }
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "order": {
      "id": 4,
      "customerId": 987,
      "customerName": "xyz789",
      "customerEmail": "xyz789",
      "customer": OrderParty,
      "deliveryAddress": OrderParty,
      "billingAddress": OrderParty,
      "status": 123,
      "datePurchased": "abc123",
      "lastModified": "xyz789",
      "currency": "xyz789",
      "currencyValue": 123.45,
      "paymentMethod": "abc123",
      "shippingMethod": "xyz789",
      "shippingCost": 987.65,
      "trackingCode": "xyz789",
      "warehouseCode": "xyz789",
      "discountCoupons": [DiscountCoupon],
      "items": [OrderItem],
      "totals": [OrderTotal],
      "bankPayments": [BankPayment],
      "vivawalletPayments": [OrderVivawalletPayment]
    }
  }
}

orderItems

Response

Returns [OrderItem!]!

Arguments
Name Description
orderId - ID!

Example

Query
query orderItems($orderId: ID!) {
  orderItems(orderId: $orderId) {
    id
    orderId
    productId
    productModel
    productEan
    productName
    quantity
    quantityReturned
    price
    originalPrice
    tax
    stockVariants
    lineType
    variants {
      id
      orderProductId
      optionId
      optionName
      optionValue
      price
      pricePrefix
    }
  }
}
Variables
{"orderId": "4"}
Response
{
  "data": {
    "orderItems": [
      {
        "id": 4,
        "orderId": 123,
        "productId": 987,
        "productModel": "xyz789",
        "productEan": "abc123",
        "productName": "abc123",
        "quantity": 987,
        "quantityReturned": 987,
        "price": 123.45,
        "originalPrice": 987.65,
        "tax": 987.65,
        "stockVariants": "abc123",
        "lineType": "abc123",
        "variants": [OrderItemVariant]
      }
    ]
  }
}

orderStatusHistory

Response

Returns [OrderStatusHistory]

Arguments
Name Description
orderId - Int!
statusId - Int
limit - Int
offset - Int

Example

Query
query orderStatusHistory(
  $orderId: Int!,
  $statusId: Int,
  $limit: Int,
  $offset: Int
) {
  orderStatusHistory(
    orderId: $orderId,
    statusId: $statusId,
    limit: $limit,
    offset: $offset
  ) {
    id
    orderId
    statusId
    statusName
    dateAdded
    customerNotified
    comments
  }
}
Variables
{"orderId": 123, "statusId": 987, "limit": 987, "offset": 123}
Response
{
  "data": {
    "orderStatusHistory": [
      {
        "id": "4",
        "orderId": 123,
        "statusId": 987,
        "statusName": "abc123",
        "dateAdded": "abc123",
        "customerNotified": 987,
        "comments": "abc123"
      }
    ]
  }
}

orderStatuses

Response

Returns [OrderStatus]

Arguments
Name Description
languageId - Int!

Example

Query
query orderStatuses($languageId: Int!) {
  orderStatuses(languageId: $languageId) {
    id
    languageId
    code
    name
    apiFlag
    apiId
    colorCode
  }
}
Variables
{"languageId": 987}
Response
{
  "data": {
    "orderStatuses": [
      {
        "id": 4,
        "languageId": 123,
        "code": "abc123",
        "name": "abc123",
        "apiFlag": 987,
        "apiId": "abc123",
        "colorCode": "abc123"
      }
    ]
  }
}

orderTotals

Response

Returns [OrderTotal!]!

Arguments
Name Description
orderId - ID!
class - String

Example

Query
query orderTotals(
  $orderId: ID!,
  $class: String
) {
  orderTotals(
    orderId: $orderId,
    class: $class
  ) {
    id
    orderId
    title
    text
    value
    valueUnreturned
    class
    sortOrder
  }
}
Variables
{"orderId": 4, "class": "xyz789"}
Response
{
  "data": {
    "orderTotals": [
      {
        "id": "4",
        "orderId": 123,
        "title": "abc123",
        "text": "abc123",
        "value": 123.45,
        "valueUnreturned": 987.65,
        "class": "abc123",
        "sortOrder": 123
      }
    ]
  }
}

orders

Response

Returns [Order]

Arguments
Name Description
limit - Int
offset - Int
customerId - Int

Example

Query
query orders(
  $limit: Int,
  $offset: Int,
  $customerId: Int
) {
  orders(
    limit: $limit,
    offset: $offset,
    customerId: $customerId
  ) {
    id
    customerId
    customerName
    customerEmail
    customer {
      name
      company
      vatId
      streetAddress
      city
      postcode
      state
      country
      telephone
      emailAddress
      addressFormatId
      invoiceAddress
      operatorId
      reference
    }
    deliveryAddress {
      name
      company
      vatId
      streetAddress
      city
      postcode
      state
      country
      telephone
      emailAddress
      addressFormatId
      invoiceAddress
      operatorId
      reference
    }
    billingAddress {
      name
      company
      vatId
      streetAddress
      city
      postcode
      state
      country
      telephone
      emailAddress
      addressFormatId
      invoiceAddress
      operatorId
      reference
    }
    status
    datePurchased
    lastModified
    currency
    currencyValue
    paymentMethod
    shippingMethod
    shippingCost
    trackingCode
    warehouseCode
    discountCoupons {
      id
      description
      amount
      discountType
      dateStart
      dateEnd
      maxUse
      minOrder
      minOrderType
      numberAvailable
      customerType
      discountedProducts
      discountedProductsOld
      allowedProducts
      categories
      products
      customers
      orders
      manufacturers
      shippingMethods
      zones
    }
    items {
      id
      orderId
      productId
      productModel
      productEan
      productName
      quantity
      quantityReturned
      price
      originalPrice
      tax
      stockVariants
      lineType
      variants {
        ...OrderItemVariantFragment
      }
    }
    totals {
      id
      orderId
      title
      text
      value
      valueUnreturned
      class
      sortOrder
    }
    bankPayments {
      id
      orderId
      invoicePaymentDate
      invoicePaymentValueDate
      amount
    }
    vivawalletPayments {
      id
      orderId
      customerId
      paymentMethod
      notificationId
      orderCode
      transactionUuid
      sessionId
    }
  }
}
Variables
{"limit": 123, "offset": 987, "customerId": 123}
Response
{
  "data": {
    "orders": [
      {
        "id": 4,
        "customerId": 123,
        "customerName": "xyz789",
        "customerEmail": "xyz789",
        "customer": OrderParty,
        "deliveryAddress": OrderParty,
        "billingAddress": OrderParty,
        "status": 987,
        "datePurchased": "xyz789",
        "lastModified": "xyz789",
        "currency": "xyz789",
        "currencyValue": 987.65,
        "paymentMethod": "abc123",
        "shippingMethod": "xyz789",
        "shippingCost": 987.65,
        "trackingCode": "abc123",
        "warehouseCode": "xyz789",
        "discountCoupons": [DiscountCoupon],
        "items": [OrderItem],
        "totals": [OrderTotal],
        "bankPayments": [BankPayment],
        "vivawalletPayments": [OrderVivawalletPayment]
      }
    ]
  }
}

ordersHistory

Response

Returns [OrderHistoryEntry!]!

Arguments
Name Description
orderId - Int!
userId - Int
startDate - String
endDate - String
limit - Int
offset - Int

Example

Query
query ordersHistory(
  $orderId: Int!,
  $userId: Int,
  $startDate: String,
  $endDate: String,
  $limit: Int,
  $offset: Int
) {
  ordersHistory(
    orderId: $orderId,
    userId: $userId,
    startDate: $startDate,
    endDate: $endDate,
    limit: $limit,
    offset: $offset
  ) {
    id
    orderId
    entityType
    entityId
    columnName
    oldValue
    newValue
    actionType
    userId
    userName
    page
    createdAt
  }
}
Variables
{
  "orderId": 123,
  "userId": 987,
  "startDate": "abc123",
  "endDate": "xyz789",
  "limit": 123,
  "offset": 123
}
Response
{
  "data": {
    "ordersHistory": [
      {
        "id": "4",
        "orderId": 987,
        "entityType": "xyz789",
        "entityId": 987,
        "columnName": "abc123",
        "oldValue": "abc123",
        "newValue": "abc123",
        "actionType": "xyz789",
        "userId": 987,
        "userName": "abc123",
        "page": "abc123",
        "createdAt": "abc123"
      }
    ]
  }
}

ordersVivawallet

Response

Returns [OrderVivawalletPayment!]!

Arguments
Name Description
orderId - Int
transactionUuid - String
orderCode - String
limit - Int
offset - Int

Example

Query
query ordersVivawallet(
  $orderId: Int,
  $transactionUuid: String,
  $orderCode: String,
  $limit: Int,
  $offset: Int
) {
  ordersVivawallet(
    orderId: $orderId,
    transactionUuid: $transactionUuid,
    orderCode: $orderCode,
    limit: $limit,
    offset: $offset
  ) {
    id
    orderId
    customerId
    paymentMethod
    notificationId
    orderCode
    transactionUuid
    sessionId
  }
}
Variables
{
  "orderId": 123,
  "transactionUuid": "xyz789",
  "orderCode": "xyz789",
  "limit": 987,
  "offset": 123
}
Response
{
  "data": {
    "ordersVivawallet": [
      {
        "id": "4",
        "orderId": 123,
        "customerId": 987,
        "paymentMethod": "abc123",
        "notificationId": 123,
        "orderCode": "xyz789",
        "transactionUuid": "abc123",
        "sessionId": "xyz789"
      }
    ]
  }
}

product

Description

Fetch a single product by id, optionally localized via languageId.

Response

Returns a Product

Arguments
Name Description
id - ID!
languageId - Int

Example

Query
query product(
  $id: ID!,
  $languageId: Int
) {
  product(
    id: $id,
    languageId: $languageId
  ) {
    id
    name
    model
    image
    price
    description
    shortDescription
    material
  }
}
Variables
{"id": 4, "languageId": 123}
Response
{
  "data": {
    "product": {
      "id": 4,
      "name": "abc123",
      "model": "xyz789",
      "image": "abc123",
      "price": 987.65,
      "description": "abc123",
      "shortDescription": "abc123",
      "material": "abc123"
    }
  }
}

productAttributes

Response

Returns [ProductOption]

Arguments
Name Description
productId - ID!
languageId - Int

Example

Query
query productAttributes(
  $productId: ID!,
  $languageId: Int
) {
  productAttributes(
    productId: $productId,
    languageId: $languageId
  ) {
    id
    name
    code
    description
    sort
    values {
      id
      name
      code
      specification
      weight
      sort
      hex
      priceDelta
      pricePrefix
      apiId
    }
  }
}
Variables
{"productId": 4, "languageId": 123}
Response
{
  "data": {
    "productAttributes": [
      {
        "id": "4",
        "name": "xyz789",
        "code": "xyz789",
        "description": "xyz789",
        "sort": 987,
        "values": [ProductOptionValue]
      }
    ]
  }
}

productExtraImages

Response

Returns [ProductExtraImage]

Arguments
Name Description
productId - ID!
languageId - Int

Example

Query
query productExtraImages(
  $productId: ID!,
  $languageId: Int
) {
  productExtraImages(
    productId: $productId,
    languageId: $languageId
  ) {
    id
    code
    url
    sort
    optionId
    description
  }
}
Variables
{"productId": 4, "languageId": 123}
Response
{
  "data": {
    "productExtraImages": [
      {
        "id": "4",
        "code": "abc123",
        "url": "abc123",
        "sort": 987,
        "optionId": 123,
        "description": "abc123"
      }
    ]
  }
}

productPriceHistory

Response

Returns [ProductPriceHistory]

Arguments
Name Description
productId - ID!
stockId - ID
startDate - String
endDate - String
userName - String
limit - Int
offset - Int

Example

Query
query productPriceHistory(
  $productId: ID!,
  $stockId: ID,
  $startDate: String,
  $endDate: String,
  $userName: String,
  $limit: Int,
  $offset: Int
) {
  productPriceHistory(
    productId: $productId,
    stockId: $stockId,
    startDate: $startDate,
    endDate: $endDate,
    userName: $userName,
    limit: $limit,
    offset: $offset
  ) {
    id
    productId
    stockId
    price
    date
    userName
  }
}
Variables
{
  "productId": 4,
  "stockId": "4",
  "startDate": "xyz789",
  "endDate": "abc123",
  "userName": "xyz789",
  "limit": 987,
  "offset": 987
}
Response
{
  "data": {
    "productPriceHistory": [
      {
        "id": 4,
        "productId": "4",
        "stockId": "4",
        "price": 987.65,
        "date": "abc123",
        "userName": "abc123"
      }
    ]
  }
}

productStock

Response

Returns [ProductStock]

Arguments
Name Description
productId - ID!
variant - String

Example

Query
query productStock(
  $productId: ID!,
  $variant: String
) {
  productStock(
    productId: $productId,
    variant: $variant
  ) {
    id
    productId
    variant
    quantity
    price
    priceOriginal
    shelf
  }
}
Variables
{"productId": 4, "variant": "abc123"}
Response
{
  "data": {
    "productStock": [
      {
        "id": "4",
        "productId": "4",
        "variant": "xyz789",
        "quantity": 987,
        "price": 123.45,
        "priceOriginal": 123.45,
        "shelf": "abc123"
      }
    ]
  }
}

productVolumeAddonPrices

Arguments
Name Description
productId - ID!

Example

Query
query productVolumeAddonPrices($productId: ID!) {
  productVolumeAddonPrices(productId: $productId) {
    minimumQuantity
    unitPrice
  }
}
Variables
{"productId": 4}
Response
{
  "data": {
    "productVolumeAddonPrices": [{"minimumQuantity": 987, "unitPrice": 987.65}]
  }
}

productVolumeDiscounts

Response

Returns [ProductVolumeDiscountTier]

Arguments
Name Description
productId - ID!

Example

Query
query productVolumeDiscounts($productId: ID!) {
  productVolumeDiscounts(productId: $productId) {
    minimumQuantity
    discountPercentage
    customerGroupId
    customerId
    customerType
  }
}
Variables
{"productId": "4"}
Response
{
  "data": {
    "productVolumeDiscounts": [
      {
        "minimumQuantity": 987,
        "discountPercentage": 123.45,
        "customerGroupId": "xyz789",
        "customerId": 123,
        "customerType": "xyz789"
      }
    ]
  }
}

products

Description

Paginated list of products in the catalog.

Response

Returns [Product]

Arguments
Name Description
limit - Int
offset - Int

Example

Query
query products(
  $limit: Int,
  $offset: Int
) {
  products(
    limit: $limit,
    offset: $offset
  ) {
    id
    name
    model
    image
    price
    description
    shortDescription
    material
  }
}
Variables
{"limit": 123, "offset": 123}
Response
{
  "data": {
    "products": [
      {
        "id": "4",
        "name": "abc123",
        "model": "xyz789",
        "image": "abc123",
        "price": 123.45,
        "description": "abc123",
        "shortDescription": "abc123",
        "material": "xyz789"
      }
    ]
  }
}

productsMedia

Response

Returns [ProductMedia]

Arguments
Name Description
productId - ID!
languageId - Int
includeCategory - Boolean Default = true

Example

Query
query productsMedia(
  $productId: ID!,
  $languageId: Int,
  $includeCategory: Boolean
) {
  productsMedia(
    productId: $productId,
    languageId: $languageId,
    includeCategory: $includeCategory
  ) {
    id
    productId
    categoryId
    file
    sortOrder
    type
    size
    description
    category {
      id
      code
      sortOrder
      name
    }
  }
}
Variables
{
  "productId": "4",
  "languageId": 123,
  "includeCategory": true
}
Response
{
  "data": {
    "productsMedia": [
      {
        "id": "4",
        "productId": 4,
        "categoryId": 123,
        "file": "xyz789",
        "sortOrder": 123,
        "type": "xyz789",
        "size": "xyz789",
        "description": "xyz789",
        "category": ProductMediaCategory
      }
    ]
  }
}

productsToCategories

Response

Returns [ProductCategoryLink]

Arguments
Name Description
productId - ID
categoryId - ID
limit - Int
offset - Int

Example

Query
query productsToCategories(
  $productId: ID,
  $categoryId: ID,
  $limit: Int,
  $offset: Int
) {
  productsToCategories(
    productId: $productId,
    categoryId: $categoryId,
    limit: $limit,
    offset: $offset
  ) {
    productId
    categoryId
    product {
      id
      name
      model
      image
      price
      description
      shortDescription
      material
    }
    category {
      id
      code
      image
      banner
      parentId
      sortOrder
      position
      descriptions {
        ...CategoryDescriptionFragment
      }
    }
  }
}
Variables
{
  "productId": "4",
  "categoryId": 4,
  "limit": 987,
  "offset": 987
}
Response
{
  "data": {
    "productsToCategories": [
      {
        "productId": 4,
        "categoryId": 4,
        "product": Product,
        "category": Category
      }
    ]
  }
}

quote

Response

Returns a Quote

Arguments
Name Description
id - ID!

Example

Query
query quote($id: ID!) {
  quote(id: $id) {
    id
    customerId
    sessionId
    ipAddress
    statusId
    dateAdded
    dateModified
    dateReminder
    dateFollowUp
    sendReminder
    sendFollowUp
    discountType
    discountAmount
    comment
    cc
    shipmentMethod
    shipmentCode
    shipmentPrice
    warehouseId
    items {
      id
      quoteId
      productId
      variant
      quantity
      discountedPrice
      productGroup
      comment
      customOptions
      bundleId
    }
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "quote": {
      "id": 4,
      "customerId": 987,
      "sessionId": "xyz789",
      "ipAddress": "abc123",
      "statusId": 123,
      "dateAdded": "xyz789",
      "dateModified": "abc123",
      "dateReminder": "abc123",
      "dateFollowUp": "abc123",
      "sendReminder": "xyz789",
      "sendFollowUp": "abc123",
      "discountType": "xyz789",
      "discountAmount": 987.65,
      "comment": "xyz789",
      "cc": "xyz789",
      "shipmentMethod": "xyz789",
      "shipmentCode": "xyz789",
      "shipmentPrice": 123.45,
      "warehouseId": 987,
      "items": [QuoteProduct]
    }
  }
}

quoteFiles

Response

Returns [QuoteFile]

Arguments
Name Description
quoteId - ID!

Example

Query
query quoteFiles($quoteId: ID!) {
  quoteFiles(quoteId: $quoteId) {
    id
    quoteId
    file
  }
}
Variables
{"quoteId": 4}
Response
{
  "data": {
    "quoteFiles": [
      {
        "id": "4",
        "quoteId": 123,
        "file": "abc123"
      }
    ]
  }
}

quoteGroups

Response

Returns [QuoteGroup!]!

Arguments
Name Description
languageId - Int!

Example

Query
query quoteGroups($languageId: Int!) {
  quoteGroups(languageId: $languageId) {
    id
    languageId
    name
  }
}
Variables
{"languageId": 123}
Response
{
  "data": {
    "quoteGroups": [
      {
        "id": 4,
        "languageId": 123,
        "name": "abc123"
      }
    ]
  }
}

quoteStatusHistory

Response

Returns [QuoteStatusEntry]

Arguments
Name Description
quoteId - ID!

Example

Query
query quoteStatusHistory($quoteId: ID!) {
  quoteStatusHistory(quoteId: $quoteId) {
    id
    quoteId
    statusId
    statusName
    dateAdded
    customerNotified
    comments
  }
}
Variables
{"quoteId": 4}
Response
{
  "data": {
    "quoteStatusHistory": [
      {
        "id": 4,
        "quoteId": 987,
        "statusId": 987,
        "statusName": "xyz789",
        "dateAdded": "abc123",
        "customerNotified": 987,
        "comments": "xyz789"
      }
    ]
  }
}

quoteStatuses

Response

Returns [QuoteStatus]

Arguments
Name Description
languageId - Int!

Example

Query
query quoteStatuses($languageId: Int!) {
  quoteStatuses(languageId: $languageId) {
    id
    languageId
    name
    code
  }
}
Variables
{"languageId": 987}
Response
{
  "data": {
    "quoteStatuses": [
      {
        "id": 4,
        "languageId": 123,
        "name": "abc123",
        "code": "xyz789"
      }
    ]
  }
}

quotesByCustomer

Response

Returns [Quote!]!

Arguments
Name Description
customerId - Int!
statusId - Int
limit - Int

Example

Query
query quotesByCustomer(
  $customerId: Int!,
  $statusId: Int,
  $limit: Int
) {
  quotesByCustomer(
    customerId: $customerId,
    statusId: $statusId,
    limit: $limit
  ) {
    id
    customerId
    sessionId
    ipAddress
    statusId
    dateAdded
    dateModified
    dateReminder
    dateFollowUp
    sendReminder
    sendFollowUp
    discountType
    discountAmount
    comment
    cc
    shipmentMethod
    shipmentCode
    shipmentPrice
    warehouseId
    items {
      id
      quoteId
      productId
      variant
      quantity
      discountedPrice
      productGroup
      comment
      customOptions
      bundleId
    }
  }
}
Variables
{"customerId": 987, "statusId": 987, "limit": 987}
Response
{
  "data": {
    "quotesByCustomer": [
      {
        "id": 4,
        "customerId": 987,
        "sessionId": "xyz789",
        "ipAddress": "xyz789",
        "statusId": 123,
        "dateAdded": "xyz789",
        "dateModified": "xyz789",
        "dateReminder": "xyz789",
        "dateFollowUp": "xyz789",
        "sendReminder": "xyz789",
        "sendFollowUp": "xyz789",
        "discountType": "xyz789",
        "discountAmount": 123.45,
        "comment": "abc123",
        "cc": "xyz789",
        "shipmentMethod": "abc123",
        "shipmentCode": "abc123",
        "shipmentPrice": 987.65,
        "warehouseId": 123,
        "items": [QuoteProduct]
      }
    ]
  }
}

quotesBySession

Response

Returns [Quote!]!

Arguments
Name Description
sessionId - String!
statusId - Int
limit - Int

Example

Query
query quotesBySession(
  $sessionId: String!,
  $statusId: Int,
  $limit: Int
) {
  quotesBySession(
    sessionId: $sessionId,
    statusId: $statusId,
    limit: $limit
  ) {
    id
    customerId
    sessionId
    ipAddress
    statusId
    dateAdded
    dateModified
    dateReminder
    dateFollowUp
    sendReminder
    sendFollowUp
    discountType
    discountAmount
    comment
    cc
    shipmentMethod
    shipmentCode
    shipmentPrice
    warehouseId
    items {
      id
      quoteId
      productId
      variant
      quantity
      discountedPrice
      productGroup
      comment
      customOptions
      bundleId
    }
  }
}
Variables
{
  "sessionId": "xyz789",
  "statusId": 987,
  "limit": 987
}
Response
{
  "data": {
    "quotesBySession": [
      {
        "id": "4",
        "customerId": 123,
        "sessionId": "xyz789",
        "ipAddress": "abc123",
        "statusId": 987,
        "dateAdded": "abc123",
        "dateModified": "xyz789",
        "dateReminder": "xyz789",
        "dateFollowUp": "xyz789",
        "sendReminder": "xyz789",
        "sendFollowUp": "abc123",
        "discountType": "xyz789",
        "discountAmount": 123.45,
        "comment": "abc123",
        "cc": "abc123",
        "shipmentMethod": "xyz789",
        "shipmentCode": "xyz789",
        "shipmentPrice": 987.65,
        "warehouseId": 123,
        "items": [QuoteProduct]
      }
    ]
  }
}

reviewSummaries

Description

Aggregate review counts and ratings across one or many products.

Response

Returns [ReviewSummary]

Arguments
Name Description
productId - ID
limit - Int
offset - Int

Example

Query
query reviewSummaries(
  $productId: ID,
  $limit: Int,
  $offset: Int
) {
  reviewSummaries(
    productId: $productId,
    limit: $limit,
    offset: $offset
  ) {
    productId
    reviewsCount
    ratingSummary
  }
}
Variables
{"productId": 4, "limit": 987, "offset": 987}
Response
{
  "data": {
    "reviewSummaries": [
      {"productId": 4, "reviewsCount": 987, "ratingSummary": 123}
    ]
  }
}

reviews

Description

Paginated list of reviews, optionally filtered by product, status, or language.

Response

Returns [Review]

Arguments
Name Description
productId - ID
statusId - Int
languageId - Int
limit - Int
offset - Int

Example

Query
query reviews(
  $productId: ID,
  $statusId: Int,
  $languageId: Int,
  $limit: Int,
  $offset: Int
) {
  reviews(
    productId: $productId,
    statusId: $statusId,
    languageId: $languageId,
    limit: $limit,
    offset: $offset
  ) {
    id
    productId
    customerId
    nickname
    country
    isRecommended
    verifiedBuyer
    count
    statusId
    statusCode
    dates {
      createdAt
      orderDate
      answerDate
    }
    details {
      languageId
      title
      detail
      answer
    }
  }
}
Variables
{
  "productId": 4,
  "statusId": 987,
  "languageId": 987,
  "limit": 123,
  "offset": 123
}
Response
{
  "data": {
    "reviews": [
      {
        "id": 4,
        "productId": 4,
        "customerId": 987,
        "nickname": "abc123",
        "country": "xyz789",
        "isRecommended": false,
        "verifiedBuyer": true,
        "count": 123,
        "statusId": 987,
        "statusCode": "xyz789",
        "dates": ReviewDates,
        "details": [ReviewDetail]
      }
    ]
  }
}

serviceCategories

Response

Returns [ServiceCategory]

Arguments
Name Description
languageId - Int!
parentId - Int
displayFooter - Boolean

Example

Query
query serviceCategories(
  $languageId: Int!,
  $parentId: Int,
  $displayFooter: Boolean
) {
  serviceCategories(
    languageId: $languageId,
    parentId: $parentId,
    displayFooter: $displayFooter
  ) {
    id
    parentId
    sortOrder
    displayFooter
    svgIcon
    descriptions {
      languageId
      name
      url
      html
    }
    children {
      id
      parentId
      sortOrder
      displayFooter
      svgIcon
      descriptions {
        ...ServiceCategoryDescriptionFragment
      }
      children {
        ...ServiceCategoryFragment
      }
    }
  }
}
Variables
{"languageId": 987, "parentId": 987, "displayFooter": false}
Response
{
  "data": {
    "serviceCategories": [
      {
        "id": 4,
        "parentId": 987,
        "sortOrder": 987,
        "displayFooter": 123,
        "svgIcon": "xyz789",
        "descriptions": [ServiceCategoryDescription],
        "children": [ServiceCategory]
      }
    ]
  }
}

services

Response

Returns [Service]

Arguments
Name Description
languageId - Int!
categoryId - Int
displayFooter - Boolean

Example

Query
query services(
  $languageId: Int!,
  $categoryId: Int,
  $displayFooter: Boolean
) {
  services(
    languageId: $languageId,
    categoryId: $categoryId,
    displayFooter: $displayFooter
  ) {
    id
    categoryId
    image
    sortOrder
    displayFooter
    googleFeed
    css
    externalJs
    externalCss
    svgIcon
    descriptions {
      languageId
      name
      url
      html
      metaTitle
      metaDescription
    }
    category {
      id
      parentId
      sortOrder
      displayFooter
      svgIcon
      descriptions {
        ...ServiceCategoryDescriptionFragment
      }
      children {
        ...ServiceCategoryFragment
      }
    }
  }
}
Variables
{"languageId": 123, "categoryId": 987, "displayFooter": true}
Response
{
  "data": {
    "services": [
      {
        "id": 4,
        "categoryId": 987,
        "image": "abc123",
        "sortOrder": 987,
        "displayFooter": 123,
        "googleFeed": 123,
        "css": "xyz789",
        "externalJs": "xyz789",
        "externalCss": "xyz789",
        "svgIcon": "xyz789",
        "descriptions": [ServiceDescription],
        "category": ServiceCategory
      }
    ]
  }
}

warehouseStock

Response

Returns [WarehouseStock]

Arguments
Name Description
warehouseId - Int
productId - Int

Example

Query
query warehouseStock(
  $warehouseId: Int,
  $productId: Int
) {
  warehouseStock(
    warehouseId: $warehouseId,
    productId: $productId
  ) {
    id
    warehouseId
    productId
    quantity
  }
}
Variables
{"warehouseId": 123, "productId": 987}
Response
{
  "data": {
    "warehouseStock": [
      {"id": 4, "warehouseId": 987, "productId": 123, "quantity": 123}
    ]
  }
}

warehouses

Response

Returns [Warehouse]

Arguments
Name Description
limit - Int
offset - Int

Example

Query
query warehouses(
  $limit: Int,
  $offset: Int
) {
  warehouses(
    limit: $limit,
    offset: $offset
  ) {
    id
    name
    code
    phone
    email
    visible
    stock {
      id
      warehouseId
      productId
      quantity
    }
  }
}
Variables
{"limit": 987, "offset": 987}
Response
{
  "data": {
    "warehouses": [
      {
        "id": 4,
        "name": "xyz789",
        "code": "abc123",
        "phone": "xyz789",
        "email": "abc123",
        "visible": true,
        "stock": [WarehouseStock]
      }
    ]
  }
}

Mutations

_empty

Response

Returns a String

Example

Query
mutation _empty {
  _empty
}
Response
{"data": {"_empty": "xyz789"}}

addOrdersProduct

Response

Returns an OrdersProduct!

Arguments
Name Description
input - AddOrdersProductInput!

Example

Query
mutation addOrdersProduct($input: AddOrdersProductInput!) {
  addOrdersProduct(input: $input) {
    id
    orderId
    productId
    productModel
    productEan
    productName
    price
    originalPrice
    tax
    quantity
    quantityReturned
    stockVariants
    lineType
    comment
    customOptions
  }
}
Variables
{"input": AddOrdersProductInput}
Response
{
  "data": {
    "addOrdersProduct": {
      "id": "4",
      "orderId": 987,
      "productId": 987,
      "productModel": "abc123",
      "productEan": "abc123",
      "productName": "xyz789",
      "price": 123.45,
      "originalPrice": 123.45,
      "tax": 123.45,
      "quantity": 987,
      "quantityReturned": 987,
      "stockVariants": "xyz789",
      "lineType": "abc123",
      "comment": "xyz789",
      "customOptions": {}
    }
  }
}

addOrdersProductsVariant

Response

Returns an OrdersProductsVariant!

Arguments
Name Description
input - AddOrdersProductsVariantInput!

Example

Query
mutation addOrdersProductsVariant($input: AddOrdersProductsVariantInput!) {
  addOrdersProductsVariant(input: $input) {
    id
    orderId
    orderProductId
    optionId
    optionName
    optionValue
    price
    pricePrefix
  }
}
Variables
{"input": AddOrdersProductsVariantInput}
Response
{
  "data": {
    "addOrdersProductsVariant": {
      "id": 4,
      "orderId": 987,
      "orderProductId": 987,
      "optionId": 987,
      "optionName": "xyz789",
      "optionValue": "xyz789",
      "price": 123.45,
      "pricePrefix": "xyz789"
    }
  }
}

addOrdersStatusHistory

Response

Returns an OrdersStatusHistoryEntry!

Arguments
Name Description
input - OrdersStatusHistoryInput!

Example

Query
mutation addOrdersStatusHistory($input: OrdersStatusHistoryInput!) {
  addOrdersStatusHistory(input: $input) {
    id
    orderId
    statusId
    dateAdded
    customerNotified
    comments
  }
}
Variables
{"input": OrdersStatusHistoryInput}
Response
{
  "data": {
    "addOrdersStatusHistory": {
      "id": 4,
      "orderId": 987,
      "statusId": 123,
      "dateAdded": "abc123",
      "customerNotified": 987,
      "comments": "xyz789"
    }
  }
}

addQuoteFile

Response

Returns a QuoteFile!

Arguments
Name Description
quoteId - ID!
file - String!

Example

Query
mutation addQuoteFile(
  $quoteId: ID!,
  $file: String!
) {
  addQuoteFile(
    quoteId: $quoteId,
    file: $file
  ) {
    id
    quoteId
    file
  }
}
Variables
{"quoteId": 4, "file": "xyz789"}
Response
{
  "data": {
    "addQuoteFile": {
      "id": "4",
      "quoteId": 123,
      "file": "xyz789"
    }
  }
}

addQuoteStatusHistory

Response

Returns a QuoteStatusEntry

Arguments
Name Description
input - AddQuoteStatusHistoryInput!
updateNotifications - QuoteNotificationFlagsInput

Example

Query
mutation addQuoteStatusHistory(
  $input: AddQuoteStatusHistoryInput!,
  $updateNotifications: QuoteNotificationFlagsInput
) {
  addQuoteStatusHistory(
    input: $input,
    updateNotifications: $updateNotifications
  ) {
    id
    quoteId
    statusId
    statusName
    dateAdded
    customerNotified
    comments
  }
}
Variables
{
  "input": AddQuoteStatusHistoryInput,
  "updateNotifications": QuoteNotificationFlagsInput
}
Response
{
  "data": {
    "addQuoteStatusHistory": {
      "id": "4",
      "quoteId": 987,
      "statusId": 987,
      "statusName": "abc123",
      "dateAdded": "xyz789",
      "customerNotified": 987,
      "comments": "abc123"
    }
  }
}

attachDiscountCouponToCustomer

Response

Returns a DiscountCouponCustomerLink!

Arguments
Name Description
input - DiscountCouponCustomerLinkInput!

Example

Query
mutation attachDiscountCouponToCustomer($input: DiscountCouponCustomerLinkInput!) {
  attachDiscountCouponToCustomer(input: $input) {
    couponCode
    customerId
  }
}
Variables
{"input": DiscountCouponCustomerLinkInput}
Response
{"data": {"attachDiscountCouponToCustomer": {"couponCode": 4, "customerId": 4}}}

createCustomer

Description

Create a registered customer account with a password. Email address must be unique across registered customers in the tenant. Returns the created Customer including its assigned id.

Response

Returns a Customer!

Arguments
Name Description
input - CreateCustomerInput!

Example

Query
mutation createCustomer($input: CreateCustomerInput!) {
  createCustomer(input: $input) {
    id
    gender
    firstname
    lastname
    emailAddress
    defaultAddressId
    defaultDeliveryAddressId
    telephone
    newsletter
    freeShipping
    admin
    type
    group
    approved
    undeliveredOrders
    blockPayments
    blockShipments
    temporaryCustomer
    emailSent
    apiId
    apiBillingId
    grantWhatsapp
    billingOperatorId
    billingInvoiceAddress
    billingReference
    billingReferenceRequired
    info {
      dateOfLastLogon
      numberOfLogons
      numberOfFailedLogins
      dateOfLastLoginFail
      dateAccountCreated
      dateAccountLastModified
      sourceId
      globalProductNotifications
    }
    addresses {
      id
      gender
      company
      firstname
      lastname
      streetAddress
      vatid
      postcode
      city
      state
      countryId
      zoneId
      comments
      billingStreetAddress
      billingFirstname
      billingLastname
      billingPostcode
      billingCity
      billingCountryId
      billingCompany
      billingVatid
      billingZoneId
      billingState
      billingOperatorId
      billingInvoiceAddress
      billingReference
      billingReferenceRequired
    }
  }
}
Variables
{"input": CreateCustomerInput}
Response
{
  "data": {
    "createCustomer": {
      "id": 4,
      "gender": "xyz789",
      "firstname": "abc123",
      "lastname": "xyz789",
      "emailAddress": "abc123",
      "defaultAddressId": 987,
      "defaultDeliveryAddressId": 123,
      "telephone": "abc123",
      "newsletter": true,
      "freeShipping": 987.65,
      "admin": 987,
      "type": 987,
      "group": "xyz789",
      "approved": true,
      "undeliveredOrders": 123,
      "blockPayments": "xyz789",
      "blockShipments": "xyz789",
      "temporaryCustomer": false,
      "emailSent": false,
      "apiId": "xyz789",
      "apiBillingId": 123,
      "grantWhatsapp": true,
      "billingOperatorId": 123,
      "billingInvoiceAddress": "abc123",
      "billingReference": "xyz789",
      "billingReferenceRequired": false,
      "info": CustomerInfo,
      "addresses": [Address]
    }
  }
}

createFavorite

Response

Returns a CustomerFavorite

Arguments
Name Description
input - AddCustomerFavoriteInput!

Example

Query
mutation createFavorite($input: AddCustomerFavoriteInput!) {
  createFavorite(input: $input) {
    id
    customersId
    productsId
  }
}
Variables
{"input": AddCustomerFavoriteInput}
Response
{"data": {"createFavorite": {"id": 4, "customersId": 123, "productsId": 987}}}

createGuestCustomer

Description

Create a guest customer for one-time checkout, without a password. Guest customers may share email addresses with each other and with registered customers. Returns the created Customer including its assigned id.

Response

Returns a Customer!

Arguments
Name Description
input - CreateGuestCustomerInput!

Example

Query
mutation createGuestCustomer($input: CreateGuestCustomerInput!) {
  createGuestCustomer(input: $input) {
    id
    gender
    firstname
    lastname
    emailAddress
    defaultAddressId
    defaultDeliveryAddressId
    telephone
    newsletter
    freeShipping
    admin
    type
    group
    approved
    undeliveredOrders
    blockPayments
    blockShipments
    temporaryCustomer
    emailSent
    apiId
    apiBillingId
    grantWhatsapp
    billingOperatorId
    billingInvoiceAddress
    billingReference
    billingReferenceRequired
    info {
      dateOfLastLogon
      numberOfLogons
      numberOfFailedLogins
      dateOfLastLoginFail
      dateAccountCreated
      dateAccountLastModified
      sourceId
      globalProductNotifications
    }
    addresses {
      id
      gender
      company
      firstname
      lastname
      streetAddress
      vatid
      postcode
      city
      state
      countryId
      zoneId
      comments
      billingStreetAddress
      billingFirstname
      billingLastname
      billingPostcode
      billingCity
      billingCountryId
      billingCompany
      billingVatid
      billingZoneId
      billingState
      billingOperatorId
      billingInvoiceAddress
      billingReference
      billingReferenceRequired
    }
  }
}
Variables
{"input": CreateGuestCustomerInput}
Response
{
  "data": {
    "createGuestCustomer": {
      "id": 4,
      "gender": "abc123",
      "firstname": "abc123",
      "lastname": "xyz789",
      "emailAddress": "xyz789",
      "defaultAddressId": 123,
      "defaultDeliveryAddressId": 987,
      "telephone": "abc123",
      "newsletter": true,
      "freeShipping": 987.65,
      "admin": 987,
      "type": 987,
      "group": "xyz789",
      "approved": false,
      "undeliveredOrders": 123,
      "blockPayments": "abc123",
      "blockShipments": "abc123",
      "temporaryCustomer": false,
      "emailSent": false,
      "apiId": "abc123",
      "apiBillingId": 987,
      "grantWhatsapp": false,
      "billingOperatorId": 123,
      "billingInvoiceAddress": "xyz789",
      "billingReference": "abc123",
      "billingReferenceRequired": true,
      "info": CustomerInfo,
      "addresses": [Address]
    }
  }
}

createOrUpdateSharedBasket

Response

Returns a SharedBasketItem!

Arguments
Name Description
input - CreateSharedBasketInput!

Example

Query
mutation createOrUpdateSharedBasket($input: CreateSharedBasketInput!) {
  createOrUpdateSharedBasket(input: $input) {
    id
    sharedCartId
    customersId
    itemId
    productId
    variants
    productOptions
    comment
    customOptions
    quantity
    specialPrice
    bundleId
    includes
    dateAdded
    expiresAt
  }
}
Variables
{"input": CreateSharedBasketInput}
Response
{
  "data": {
    "createOrUpdateSharedBasket": {
      "id": "4",
      "sharedCartId": "abc123",
      "customersId": 123,
      "itemId": "abc123",
      "productId": 987,
      "variants": "xyz789",
      "productOptions": "abc123",
      "comment": "abc123",
      "customOptions": "xyz789",
      "quantity": 987,
      "specialPrice": 123.45,
      "bundleId": "abc123",
      "includes": "xyz789",
      "dateAdded": "xyz789",
      "expiresAt": "xyz789"
    }
  }
}

createOrder

Description

Create an order with line items, addresses, and an optional payment intent. The status defaults to 1 (created) unless an explicit status id is supplied.

Response

Returns an Order!

Arguments
Name Description
input - CreateOrderInput!

Example

Query
mutation createOrder($input: CreateOrderInput!) {
  createOrder(input: $input) {
    id
    customerId
    customerName
    customerEmail
    customer {
      name
      company
      vatId
      streetAddress
      city
      postcode
      state
      country
      telephone
      emailAddress
      addressFormatId
      invoiceAddress
      operatorId
      reference
    }
    deliveryAddress {
      name
      company
      vatId
      streetAddress
      city
      postcode
      state
      country
      telephone
      emailAddress
      addressFormatId
      invoiceAddress
      operatorId
      reference
    }
    billingAddress {
      name
      company
      vatId
      streetAddress
      city
      postcode
      state
      country
      telephone
      emailAddress
      addressFormatId
      invoiceAddress
      operatorId
      reference
    }
    status
    datePurchased
    lastModified
    currency
    currencyValue
    paymentMethod
    shippingMethod
    shippingCost
    trackingCode
    warehouseCode
    discountCoupons {
      id
      description
      amount
      discountType
      dateStart
      dateEnd
      maxUse
      minOrder
      minOrderType
      numberAvailable
      customerType
      discountedProducts
      discountedProductsOld
      allowedProducts
      categories
      products
      customers
      orders
      manufacturers
      shippingMethods
      zones
    }
    items {
      id
      orderId
      productId
      productModel
      productEan
      productName
      quantity
      quantityReturned
      price
      originalPrice
      tax
      stockVariants
      lineType
      variants {
        ...OrderItemVariantFragment
      }
    }
    totals {
      id
      orderId
      title
      text
      value
      valueUnreturned
      class
      sortOrder
    }
    bankPayments {
      id
      orderId
      invoicePaymentDate
      invoicePaymentValueDate
      amount
    }
    vivawalletPayments {
      id
      orderId
      customerId
      paymentMethod
      notificationId
      orderCode
      transactionUuid
      sessionId
    }
  }
}
Variables
{"input": CreateOrderInput}
Response
{
  "data": {
    "createOrder": {
      "id": "4",
      "customerId": 123,
      "customerName": "xyz789",
      "customerEmail": "abc123",
      "customer": OrderParty,
      "deliveryAddress": OrderParty,
      "billingAddress": OrderParty,
      "status": 987,
      "datePurchased": "xyz789",
      "lastModified": "xyz789",
      "currency": "xyz789",
      "currencyValue": 987.65,
      "paymentMethod": "xyz789",
      "shippingMethod": "abc123",
      "shippingCost": 123.45,
      "trackingCode": "xyz789",
      "warehouseCode": "abc123",
      "discountCoupons": [DiscountCoupon],
      "items": [OrderItem],
      "totals": [OrderTotal],
      "bankPayments": [BankPayment],
      "vivawalletPayments": [OrderVivawalletPayment]
    }
  }
}

createProductCustomOption

Response

Returns a ProductCustomOption

Arguments
Name Description
input - CreateProductCustomOptionInput!

Example

Query
mutation createProductCustomOption($input: CreateProductCustomOptionInput!) {
  createProductCustomOption(input: $input) {
    id
    productId
    productsOptionsId
    required
    position
    type
  }
}
Variables
{"input": CreateProductCustomOptionInput}
Response
{
  "data": {
    "createProductCustomOption": {
      "id": "4",
      "productId": 987,
      "productsOptionsId": 987,
      "required": false,
      "position": 987,
      "type": "abc123"
    }
  }
}

createQuote

Description

Create a quote (B2B request-for-pricing) with one or more line items.

Response

Returns a Quote!

Arguments
Name Description
input - CreateQuoteInput!

Example

Query
mutation createQuote($input: CreateQuoteInput!) {
  createQuote(input: $input) {
    id
    customerId
    sessionId
    ipAddress
    statusId
    dateAdded
    dateModified
    dateReminder
    dateFollowUp
    sendReminder
    sendFollowUp
    discountType
    discountAmount
    comment
    cc
    shipmentMethod
    shipmentCode
    shipmentPrice
    warehouseId
    items {
      id
      quoteId
      productId
      variant
      quantity
      discountedPrice
      productGroup
      comment
      customOptions
      bundleId
    }
  }
}
Variables
{"input": CreateQuoteInput}
Response
{
  "data": {
    "createQuote": {
      "id": 4,
      "customerId": 987,
      "sessionId": "xyz789",
      "ipAddress": "xyz789",
      "statusId": 987,
      "dateAdded": "abc123",
      "dateModified": "abc123",
      "dateReminder": "abc123",
      "dateFollowUp": "xyz789",
      "sendReminder": "xyz789",
      "sendFollowUp": "abc123",
      "discountType": "xyz789",
      "discountAmount": 987.65,
      "comment": "abc123",
      "cc": "abc123",
      "shipmentMethod": "xyz789",
      "shipmentCode": "xyz789",
      "shipmentPrice": 123.45,
      "warehouseId": 987,
      "items": [QuoteProduct]
    }
  }
}

deleteFavorite

Response

Returns a Boolean

Arguments
Name Description
input - RemoveCustomerFavoriteInput!

Example

Query
mutation deleteFavorite($input: RemoveCustomerFavoriteInput!) {
  deleteFavorite(input: $input)
}
Variables
{"input": RemoveCustomerFavoriteInput}
Response
{"data": {"deleteFavorite": false}}

expireSharedBasketItem

Response

Returns a SharedBasketItem!

Arguments
Name Description
input - ExpireSharedBasketInput!

Example

Query
mutation expireSharedBasketItem($input: ExpireSharedBasketInput!) {
  expireSharedBasketItem(input: $input) {
    id
    sharedCartId
    customersId
    itemId
    productId
    variants
    productOptions
    comment
    customOptions
    quantity
    specialPrice
    bundleId
    includes
    dateAdded
    expiresAt
  }
}
Variables
{"input": ExpireSharedBasketInput}
Response
{
  "data": {
    "expireSharedBasketItem": {
      "id": 4,
      "sharedCartId": "abc123",
      "customersId": 123,
      "itemId": "xyz789",
      "productId": 987,
      "variants": "xyz789",
      "productOptions": "xyz789",
      "comment": "abc123",
      "customOptions": "xyz789",
      "quantity": 987,
      "specialPrice": 987.65,
      "bundleId": "xyz789",
      "includes": "abc123",
      "dateAdded": "xyz789",
      "expiresAt": "xyz789"
    }
  }
}

grantCustomerProductAccess

Response

Returns a CustomerProductInclusion!

Arguments
Name Description
input - CustomerProductInclusionInput!

Example

Query
mutation grantCustomerProductAccess($input: CustomerProductInclusionInput!) {
  grantCustomerProductAccess(input: $input) {
    id
    customerId
    productId
  }
}
Variables
{"input": CustomerProductInclusionInput}
Response
{
  "data": {
    "grantCustomerProductAccess": {
      "id": "4",
      "customerId": 123,
      "productId": 123
    }
  }
}

removeDiscountCouponFromCustomer

Response

Returns a Boolean!

Arguments
Name Description
input - DiscountCouponCustomerLinkInput!

Example

Query
mutation removeDiscountCouponFromCustomer($input: DiscountCouponCustomerLinkInput!) {
  removeDiscountCouponFromCustomer(input: $input)
}
Variables
{"input": DiscountCouponCustomerLinkInput}
Response
{"data": {"removeDiscountCouponFromCustomer": true}}

removeOrdersProduct

Response

Returns a Boolean!

Arguments
Name Description
id - ID!

Example

Query
mutation removeOrdersProduct($id: ID!) {
  removeOrdersProduct(id: $id)
}
Variables
{"id": "4"}
Response
{"data": {"removeOrdersProduct": false}}

removeOrdersProductsVariant

Response

Returns a Boolean!

Arguments
Name Description
id - ID!

Example

Query
mutation removeOrdersProductsVariant($id: ID!) {
  removeOrdersProductsVariant(id: $id)
}
Variables
{"id": "4"}
Response
{"data": {"removeOrdersProductsVariant": true}}

removeProductCustomOption

Response

Returns a Boolean

Arguments
Name Description
id - ID!

Example

Query
mutation removeProductCustomOption($id: ID!) {
  removeProductCustomOption(id: $id)
}
Variables
{"id": 4}
Response
{"data": {"removeProductCustomOption": false}}

revokeCustomerProductAccess

Response

Returns a Boolean!

Arguments
Name Description
input - CustomerProductInclusionInput!

Example

Query
mutation revokeCustomerProductAccess($input: CustomerProductInclusionInput!) {
  revokeCustomerProductAccess(input: $input)
}
Variables
{"input": CustomerProductInclusionInput}
Response
{"data": {"revokeCustomerProductAccess": true}}

updateOrdersProduct

Response

Returns an OrdersProduct!

Arguments
Name Description
id - ID!
input - UpdateOrdersProductInput!

Example

Query
mutation updateOrdersProduct(
  $id: ID!,
  $input: UpdateOrdersProductInput!
) {
  updateOrdersProduct(
    id: $id,
    input: $input
  ) {
    id
    orderId
    productId
    productModel
    productEan
    productName
    price
    originalPrice
    tax
    quantity
    quantityReturned
    stockVariants
    lineType
    comment
    customOptions
  }
}
Variables
{"id": 4, "input": UpdateOrdersProductInput}
Response
{
  "data": {
    "updateOrdersProduct": {
      "id": 4,
      "orderId": 123,
      "productId": 123,
      "productModel": "xyz789",
      "productEan": "abc123",
      "productName": "abc123",
      "price": 987.65,
      "originalPrice": 123.45,
      "tax": 123.45,
      "quantity": 123,
      "quantityReturned": 123,
      "stockVariants": "xyz789",
      "lineType": "abc123",
      "comment": "xyz789",
      "customOptions": {}
    }
  }
}

updateOrdersProductsVariant

Response

Returns an OrdersProductsVariant!

Arguments
Name Description
id - ID!
input - UpdateOrdersProductsVariantInput!

Example

Query
mutation updateOrdersProductsVariant(
  $id: ID!,
  $input: UpdateOrdersProductsVariantInput!
) {
  updateOrdersProductsVariant(
    id: $id,
    input: $input
  ) {
    id
    orderId
    orderProductId
    optionId
    optionName
    optionValue
    price
    pricePrefix
  }
}
Variables
{"id": 4, "input": UpdateOrdersProductsVariantInput}
Response
{
  "data": {
    "updateOrdersProductsVariant": {
      "id": 4,
      "orderId": 123,
      "orderProductId": 987,
      "optionId": 123,
      "optionName": "xyz789",
      "optionValue": "xyz789",
      "price": 123.45,
      "pricePrefix": "abc123"
    }
  }
}

updateProductCustomOption

Response

Returns a ProductCustomOption

Arguments
Name Description
id - ID!
input - UpdateProductCustomOptionInput!

Example

Query
mutation updateProductCustomOption(
  $id: ID!,
  $input: UpdateProductCustomOptionInput!
) {
  updateProductCustomOption(
    id: $id,
    input: $input
  ) {
    id
    productId
    productsOptionsId
    required
    position
    type
  }
}
Variables
{
  "id": "4",
  "input": UpdateProductCustomOptionInput
}
Response
{
  "data": {
    "updateProductCustomOption": {
      "id": 4,
      "productId": 123,
      "productsOptionsId": 123,
      "required": false,
      "position": 987,
      "type": "abc123"
    }
  }
}

updateSharedBasketQuantity

Response

Returns a SharedBasketItem!

Arguments
Name Description
input - UpdateSharedBasketQuantityInput!

Example

Query
mutation updateSharedBasketQuantity($input: UpdateSharedBasketQuantityInput!) {
  updateSharedBasketQuantity(input: $input) {
    id
    sharedCartId
    customersId
    itemId
    productId
    variants
    productOptions
    comment
    customOptions
    quantity
    specialPrice
    bundleId
    includes
    dateAdded
    expiresAt
  }
}
Variables
{"input": UpdateSharedBasketQuantityInput}
Response
{
  "data": {
    "updateSharedBasketQuantity": {
      "id": "4",
      "sharedCartId": "abc123",
      "customersId": 123,
      "itemId": "abc123",
      "productId": 123,
      "variants": "abc123",
      "productOptions": "xyz789",
      "comment": "xyz789",
      "customOptions": "abc123",
      "quantity": 123,
      "specialPrice": 123.45,
      "bundleId": "abc123",
      "includes": "xyz789",
      "dateAdded": "abc123",
      "expiresAt": "abc123"
    }
  }
}

upsertOrdersNetsNotification

Response

Returns an OrderNetsNotification

Arguments
Name Description
input - OrdersNetsNotificationInput!

Example

Query
mutation upsertOrdersNetsNotification($input: OrdersNetsNotificationInput!) {
  upsertOrdersNetsNotification(input: $input) {
    ordersPaytrailId
    customersId
    notificationId
    sessionId
    transactionId
    stamp
    amount
    error
  }
}
Variables
{"input": OrdersNetsNotificationInput}
Response
{
  "data": {
    "upsertOrdersNetsNotification": {
      "ordersPaytrailId": 123,
      "customersId": 987,
      "notificationId": 123,
      "sessionId": "abc123",
      "transactionId": "abc123",
      "stamp": "xyz789",
      "amount": 123.45,
      "error": "xyz789"
    }
  }
}

Types

ActionRecorderEntry

Fields
Field Name Description
id - ID!
module - String!
userId - Int
userName - String
identifier - String!
userAgent - String
success - Boolean
dateAdded - String!
Example
{
  "id": 4,
  "module": "xyz789",
  "userId": 123,
  "userName": "abc123",
  "identifier": "abc123",
  "userAgent": "abc123",
  "success": false,
  "dateAdded": "abc123"
}

ActionRecorderPage

Fields
Field Name Description
total - Int!
entries - [ActionRecorderEntry!]!
Example
{"total": 123, "entries": [ActionRecorderEntry]}

AddCustomerFavoriteInput

Fields
Input Field Description
customersId - Int!
productsId - Int!
Example
{"customersId": 987, "productsId": 123}

AddOrdersProductInput

Fields
Input Field Description
orderId - ID!
productId - Int
productModel - String
productEan - String
productName - String!
price - Float!
originalPrice - Float
tax - Float
quantity - Int!
stockVariants - String
lineType - String
comment - String
customOptions - JSON
Example
{
  "orderId": "4",
  "productId": 123,
  "productModel": "xyz789",
  "productEan": "abc123",
  "productName": "xyz789",
  "price": 987.65,
  "originalPrice": 987.65,
  "tax": 123.45,
  "quantity": 987,
  "stockVariants": "abc123",
  "lineType": "xyz789",
  "comment": "xyz789",
  "customOptions": {}
}

AddOrdersProductsVariantInput

Fields
Input Field Description
orderId - ID!
orderProductId - ID!
optionId - Int!
optionName - String!
optionValue - String!
price - Float!
pricePrefix - String
Example
{
  "orderId": 4,
  "orderProductId": "4",
  "optionId": 123,
  "optionName": "abc123",
  "optionValue": "xyz789",
  "price": 123.45,
  "pricePrefix": "xyz789"
}

AddQuoteStatusHistoryInput

Fields
Input Field Description
quoteId - Int!
statusId - Int!
customerNotified - Int
comments - String
Example
{
  "quoteId": 987,
  "statusId": 987,
  "customerNotified": 123,
  "comments": "xyz789"
}

Address

Fields
Field Name Description
id - ID! Unique primary key for the Customer row.
gender - String
company - String
firstname - String!
lastname - String!
streetAddress - String!
vatid - String
postcode - String!
city - String!
state - String
countryId - Int
zoneId - Int
comments - String
billingStreetAddress - String
billingFirstname - String
billingLastname - String
billingPostcode - String
billingCity - String
billingCountryId - String
billingCompany - String
billingVatid - String
billingZoneId - String
billingState - String
billingOperatorId - Int
billingInvoiceAddress - String
billingReference - String
billingReferenceRequired - Boolean
Example
{
  "id": "4",
  "gender": "xyz789",
  "company": "xyz789",
  "firstname": "abc123",
  "lastname": "xyz789",
  "streetAddress": "xyz789",
  "vatid": "abc123",
  "postcode": "abc123",
  "city": "xyz789",
  "state": "xyz789",
  "countryId": 123,
  "zoneId": 987,
  "comments": "abc123",
  "billingStreetAddress": "xyz789",
  "billingFirstname": "abc123",
  "billingLastname": "xyz789",
  "billingPostcode": "xyz789",
  "billingCity": "abc123",
  "billingCountryId": "xyz789",
  "billingCompany": "xyz789",
  "billingVatid": "abc123",
  "billingZoneId": "abc123",
  "billingState": "abc123",
  "billingOperatorId": 123,
  "billingInvoiceAddress": "abc123",
  "billingReference": "xyz789",
  "billingReferenceRequired": false
}

AddressBook

Description

An address book entry belonging to a customer.

Fields
Field Name Description
id - ID!
customerId - Int!
gender - String
company - String
firstname - String!
lastname - String!
streetAddress - String!
vatid - String
postcode - String!
city - String!
state - String
countryId - Int!
zoneId - Int!
comments - String
billingStreetAddress - String
billingFirstname - String
billingLastname - String
billingPostcode - String
billingCity - String
billingCountryId - String
billingCompany - String
billingVatid - String
billingZoneId - String
billingState - String
billingOperatorId - Int
billingInvoiceAddress - String
billingReference - String
billingReferenceRequired - Boolean
Example
{
  "id": "4",
  "customerId": 987,
  "gender": "xyz789",
  "company": "xyz789",
  "firstname": "xyz789",
  "lastname": "abc123",
  "streetAddress": "abc123",
  "vatid": "abc123",
  "postcode": "abc123",
  "city": "xyz789",
  "state": "xyz789",
  "countryId": 123,
  "zoneId": 123,
  "comments": "abc123",
  "billingStreetAddress": "xyz789",
  "billingFirstname": "xyz789",
  "billingLastname": "xyz789",
  "billingPostcode": "xyz789",
  "billingCity": "xyz789",
  "billingCountryId": "xyz789",
  "billingCompany": "xyz789",
  "billingVatid": "xyz789",
  "billingZoneId": "xyz789",
  "billingState": "abc123",
  "billingOperatorId": 987,
  "billingInvoiceAddress": "abc123",
  "billingReference": "abc123",
  "billingReferenceRequired": false
}

AddressFormat

Fields
Field Name Description
id - ID!
addressFormat - String!
addressSummary - String!
Example
{
  "id": 4,
  "addressFormat": "abc123",
  "addressSummary": "xyz789"
}

AdminNotification

Fields
Field Name Description
id - ID!
errorText - String!
createdAt - String!
emailErrorSent - Boolean!
errorCleared - Boolean!
Example
{
  "id": "4",
  "errorText": "xyz789",
  "createdAt": "abc123",
  "emailErrorSent": true,
  "errorCleared": false
}

AdminTrackingCreate

Fields
Field Name Description
id - ID!
productId - Int!
userId - Int
userName - String
action - String
dateAdded - String!
Example
{
  "id": 4,
  "productId": 987,
  "userId": 987,
  "userName": "xyz789",
  "action": "abc123",
  "dateAdded": "xyz789"
}

Administrator

Fields
Field Name Description
id - ID!
userName - String!
email - String
twoFactor - Boolean
superadmin - Boolean
writePermission - Boolean
grantAccess - String
Example
{
  "id": 4,
  "userName": "abc123",
  "email": "xyz789",
  "twoFactor": false,
  "superadmin": true,
  "writePermission": true,
  "grantAccess": "abc123"
}

ApiProcessJob

Description

A job queued for an outbound third-party API call (e.g. ERP/PIM/marketplace synchronization).

Fields
Field Name Description
id - ID!
jobId - String
api - String! Identifier of the target third-party API the job will call.
endpoint - String! API endpoint or path the job will invoke.
method - String
data - JSON!
createdAt - String!
error - String Error text from the most recent attempt; null while the job has not failed.
status - String!

Computed status derived from the error column:

  • 'queued': job has not failed (error is null) — pending or successfully processed
  • 'failed': last attempt produced an error
Example
{
  "id": "4",
  "jobId": "xyz789",
  "api": "abc123",
  "endpoint": "abc123",
  "method": "abc123",
  "data": {},
  "createdAt": "abc123",
  "error": "xyz789",
  "status": "abc123"
}

Availability

Fields
Field Name Description
id - ID!
languageId - Int!
name - String!
hexCode - String
Example
{
  "id": "4",
  "languageId": 123,
  "name": "xyz789",
  "hexCode": "xyz789"
}

BankPayment

Fields
Field Name Description
id - ID!
orderId - Int!
invoicePaymentDate - String!
invoicePaymentValueDate - String!
amount - Float!
Example
{
  "id": 4,
  "orderId": 123,
  "invoicePaymentDate": "xyz789",
  "invoicePaymentValueDate": "xyz789",
  "amount": 123.45
}

Banner

Fields
Field Name Description
id - ID!
title - String!
url - String!
group - String!
status - Int!
image - String
history - BannerHistory!
historyByDate - [BannerHistoryEntry!]!
Arguments
startDate - String
endDate - String
limit - Int
offset - Int
Example
{
  "id": "4",
  "title": "abc123",
  "url": "xyz789",
  "group": "xyz789",
  "status": 987,
  "image": "xyz789",
  "history": BannerHistory,
  "historyByDate": [BannerHistoryEntry]
}

BannerHistory

Fields
Field Name Description
impressions - Int!
clicks - Int!
Example
{"impressions": 987, "clicks": 123}

BannerHistoryEntry

Fields
Field Name Description
bannerId - Int!
date - String!
impressions - Int!
clicks - Int!
Example
{
  "bannerId": 987,
  "date": "abc123",
  "impressions": 987,
  "clicks": 123
}

BillingAddress

Fields
Field Name Description
id - ID!
customerId - Int!
company - String
firstname - String
lastname - String
streetAddress - String
postcode - String
city - String
state - String
countryId - String
zoneId - String
vatid - String
operatorId - Int
invoiceAddress - String
reference - String
referenceRequired - Boolean!
Example
{
  "id": 4,
  "customerId": 987,
  "company": "xyz789",
  "firstname": "abc123",
  "lastname": "xyz789",
  "streetAddress": "xyz789",
  "postcode": "xyz789",
  "city": "xyz789",
  "state": "abc123",
  "countryId": "xyz789",
  "zoneId": "xyz789",
  "vatid": "xyz789",
  "operatorId": 987,
  "invoiceAddress": "abc123",
  "reference": "xyz789",
  "referenceRequired": true
}

Boolean

Description

The Boolean scalar type represents true or false.

BrowseHistory

Fields
Field Name Description
id - ID!
customerId - Int
sessionKey - String!
loadTimeMsec - Int!
categoryId - Int
productId - Int
manufacturerId - Int
color - Int
size - Int
geoipCountry - String!
ipAddress - String!
date - String!
timestamp - Int
topPicks - Boolean!
keywords - String
Example
{
  "id": 4,
  "customerId": 123,
  "sessionKey": "xyz789",
  "loadTimeMsec": 987,
  "categoryId": 987,
  "productId": 123,
  "manufacturerId": 123,
  "color": 123,
  "size": 123,
  "geoipCountry": "xyz789",
  "ipAddress": "xyz789",
  "date": "xyz789",
  "timestamp": 123,
  "topPicks": false,
  "keywords": "abc123"
}

Category

Description

A node in the product category tree. Categories are nested via parentId (a value of 0 indicates a top-level category). Localized titles, URLs, and descriptions are returned through the descriptions field.

Fields
Field Name Description
id - ID!
code - String
image - String
banner - String
parentId - Int Id of the parent category, or 0 for top-level categories.
sortOrder - Int
position - Int
descriptions - [CategoryDescription]
Example
{
  "id": "4",
  "code": "abc123",
  "image": "xyz789",
  "banner": "xyz789",
  "parentId": 123,
  "sortOrder": 123,
  "position": 123,
  "descriptions": [CategoryDescription]
}

CategoryDescription

Fields
Field Name Description
languageId - Int!
name - String
url - String
path - String
pathOld - String
description - String
descriptionTop - String
metaTitle - String
metaDescription - String
featureTitle - String
typeTitle - String
bannerText - String
bannerButton - String
bannerUrl - String
redirectStatus - Int
Example
{
  "languageId": 987,
  "name": "xyz789",
  "url": "xyz789",
  "path": "abc123",
  "pathOld": "abc123",
  "description": "xyz789",
  "descriptionTop": "abc123",
  "metaTitle": "abc123",
  "metaDescription": "abc123",
  "featureTitle": "abc123",
  "typeTitle": "xyz789",
  "bannerText": "abc123",
  "bannerButton": "abc123",
  "bannerUrl": "abc123",
  "redirectStatus": 123
}

Configuration

Fields
Field Name Description
id - ID!
title - String
key - String!
value - String
description - String
groupId - Int
sortOrder - Int
lastModified - String
dateAdded - String
useFunction - String
setFunction - String
group - ConfigurationGroup
Example
{
  "id": 4,
  "title": "abc123",
  "key": "xyz789",
  "value": "abc123",
  "description": "abc123",
  "groupId": 987,
  "sortOrder": 987,
  "lastModified": "xyz789",
  "dateAdded": "abc123",
  "useFunction": "xyz789",
  "setFunction": "abc123",
  "group": ConfigurationGroup
}

ConfigurationGroup

Fields
Field Name Description
id - ID!
title - String
description - String
sortOrder - Int
configurations - [Configuration]
Example
{
  "id": "4",
  "title": "xyz789",
  "description": "abc123",
  "sortOrder": 987,
  "configurations": [Configuration]
}

Country

Description

A country supported for shipping or billing addresses.

Fields
Field Name Description
id - ID!
name - String!
iso2 - String! Two-letter ISO 3166-1 alpha-2 country code (e.g. 'FI', 'US').
iso3 - String! Three-letter ISO 3166-1 alpha-3 country code (e.g. 'FIN', 'USA').
dutyRate - Float Default customs duty rate applied to imports from this country, as a percentage.
dutyLimit - Float Order value below which no duty applies, in the tenant's default currency.
addressFormatId - Int
defaultCurrencyId - Int
Example
{
  "id": "4",
  "name": "xyz789",
  "iso2": "abc123",
  "iso3": "abc123",
  "dutyRate": 987.65,
  "dutyLimit": 123.45,
  "addressFormatId": 123,
  "defaultCurrencyId": 987
}

CreateCustomerInput

Fields
Input Field Description
gender - String
firstname - String
lastname - String
emailAddress - String!
password - String!
telephone - String
newsletter - Boolean
company - String
streetAddress - String
vatid - String
postcode - String
city - String
state - String
countryId - Int
zoneId - Int
comments - String
Example
{
  "gender": "abc123",
  "firstname": "abc123",
  "lastname": "xyz789",
  "emailAddress": "abc123",
  "password": "abc123",
  "telephone": "abc123",
  "newsletter": true,
  "company": "abc123",
  "streetAddress": "xyz789",
  "vatid": "xyz789",
  "postcode": "abc123",
  "city": "xyz789",
  "state": "xyz789",
  "countryId": 123,
  "zoneId": 123,
  "comments": "abc123"
}

CreateGuestCustomerInput

Fields
Input Field Description
gender - String
firstname - String
lastname - String
emailAddress - String!
telephone - String
newsletter - Boolean
company - String
streetAddress - String
vatid - String
postcode - String
city - String
state - String
countryId - Int
zoneId - Int
comments - String
Example
{
  "gender": "xyz789",
  "firstname": "abc123",
  "lastname": "abc123",
  "emailAddress": "abc123",
  "telephone": "xyz789",
  "newsletter": false,
  "company": "xyz789",
  "streetAddress": "xyz789",
  "vatid": "abc123",
  "postcode": "abc123",
  "city": "xyz789",
  "state": "abc123",
  "countryId": 123,
  "zoneId": 123,
  "comments": "abc123"
}

CreateOrderInput

Fields
Input Field Description
customerId - Int
deliveryAddressId - Int
billingAddressId - Int
customer - OrderPartyInput
deliveryAddress - OrderPartyInput
billingAddress - OrderPartyInput
status - Int
statusComment - String
currency - String
currencyValue - Float
paymentMethod - String
paymentApiId - String
paymentField - String
paymentInput - JSON
shippingMethod - String
shippingApiId - String
shippingCode - String
shippingCost - Float
warehouseCode - String
items - [CreateOrderItemInput!]
Example
{
  "customerId": 123,
  "deliveryAddressId": 123,
  "billingAddressId": 987,
  "customer": OrderPartyInput,
  "deliveryAddress": OrderPartyInput,
  "billingAddress": OrderPartyInput,
  "status": 123,
  "statusComment": "abc123",
  "currency": "xyz789",
  "currencyValue": 123.45,
  "paymentMethod": "abc123",
  "paymentApiId": "xyz789",
  "paymentField": "abc123",
  "paymentInput": {},
  "shippingMethod": "abc123",
  "shippingApiId": "abc123",
  "shippingCode": "abc123",
  "shippingCost": 987.65,
  "warehouseCode": "abc123",
  "items": [CreateOrderItemInput]
}

CreateOrderItemInput

Fields
Input Field Description
productId - Int
sku - String
productModel - String
productEan - String
productName - String!
price - Float!
originalPrice - Float
tax - Float
quantity - Int!
stockVariants - String
lineType - String
comment - String
customOptions - JSON
variants - [CreateOrderItemVariantInput!]
Example
{
  "productId": 123,
  "sku": "abc123",
  "productModel": "xyz789",
  "productEan": "xyz789",
  "productName": "abc123",
  "price": 123.45,
  "originalPrice": 123.45,
  "tax": 123.45,
  "quantity": 987,
  "stockVariants": "xyz789",
  "lineType": "xyz789",
  "comment": "abc123",
  "customOptions": {},
  "variants": [CreateOrderItemVariantInput]
}

CreateOrderItemVariantInput

Fields
Input Field Description
optionId - Int!
optionName - String!
optionValue - String!
price - Float
pricePrefix - String
Example
{
  "optionId": 123,
  "optionName": "xyz789",
  "optionValue": "xyz789",
  "price": 123.45,
  "pricePrefix": "xyz789"
}

CreateProductCustomOptionInput

Fields
Input Field Description
productId - Int!
productsOptionsId - Int!
required - Boolean
position - Int
type - String
Example
{
  "productId": 123,
  "productsOptionsId": 987,
  "required": true,
  "position": 987,
  "type": "xyz789"
}

CreateQuoteInput

Fields
Input Field Description
customerId - Int
sessionId - String
ipAddress - String
statusId - Int
shipmentMethod - String
shipmentCode - String
shipmentPrice - Float
warehouseId - Int
items - [QuoteProductInput!]!
Example
{
  "customerId": 987,
  "sessionId": "xyz789",
  "ipAddress": "abc123",
  "statusId": 123,
  "shipmentMethod": "xyz789",
  "shipmentCode": "xyz789",
  "shipmentPrice": 987.65,
  "warehouseId": 987,
  "items": [QuoteProductInput]
}

CreateSharedBasketInput

Fields
Input Field Description
sharedCartId - String!
itemId - String!
customersId - Int
productId - Int
variants - String
productOptions - String
comment - String
customOptions - String
quantity - Int!
specialPrice - Float
bundleId - String
includes - String
expiresAt - String
requireActive - Boolean
Example
{
  "sharedCartId": "abc123",
  "itemId": "xyz789",
  "customersId": 123,
  "productId": 987,
  "variants": "abc123",
  "productOptions": "abc123",
  "comment": "xyz789",
  "customOptions": "xyz789",
  "quantity": 123,
  "specialPrice": 123.45,
  "bundleId": "xyz789",
  "includes": "abc123",
  "expiresAt": "xyz789",
  "requireActive": true
}

Currency

Description

A currency available to the storefront for display and order placement.

Fields
Field Name Description
id - ID!
title - String
code - String ISO 4217 three-letter currency code (e.g. 'EUR', 'USD', 'GBP').
symbolLeft - String
symbolRight - String
value - Float Exchange rate against the tenant's primary currency at lastUpdated.
lastUpdated - String
Example
{
  "id": 4,
  "title": "abc123",
  "code": "abc123",
  "symbolLeft": "abc123",
  "symbolRight": "xyz789",
  "value": 123.45,
  "lastUpdated": "abc123"
}

Customer

Fields
Field Name Description
id - ID!
gender - String
firstname - String
lastname - String
emailAddress - String Email address has to be unique for registered customers. Temporary customers can have the same email address.
defaultAddressId - Int Default address book record for the customer.
defaultDeliveryAddressId - Int Default delivery address book record for the customer.
telephone - String Telephone number of the customer.
newsletter - Boolean Newsletter subscription status.
freeShipping - Float Free shipping status.
admin - Int Does the account have admin privileges.
type - Int

Customer category:

  • 0: temporary or anonymized account (system-managed; placeholder for soft-deleted records)
  • 1: registered individual customer (default for normal end-user accounts)
  • 2: business customer — has VAT id and company name fields populated
group - String JSON-encoded array of customer group ids the customer belongs to. Empty array when the customer is in no groups. Group definitions live in the customer_groups table; resolve human-readable names via the customerGroups query. Each group carries its own discount type (fixed / percent / shipping) and pricing strategy.
approved - Boolean True once the customer has confirmed their email and the account is enabled for purchasing.
undeliveredOrders - Int
blockPayments - String
blockShipments - String
temporaryCustomer - Boolean
emailSent - Boolean
apiId - String
apiBillingId - Int
grantWhatsapp - Boolean Permission to send WhatsApp notifications.
billingOperatorId - Int
billingInvoiceAddress - String
billingReference - String
billingReferenceRequired - Boolean
info - CustomerInfo
addresses - [Address]
Example
{
  "id": 4,
  "gender": "xyz789",
  "firstname": "abc123",
  "lastname": "xyz789",
  "emailAddress": "abc123",
  "defaultAddressId": 123,
  "defaultDeliveryAddressId": 123,
  "telephone": "abc123",
  "newsletter": true,
  "freeShipping": 123.45,
  "admin": 123,
  "type": 123,
  "group": "xyz789",
  "approved": true,
  "undeliveredOrders": 123,
  "blockPayments": "abc123",
  "blockShipments": "xyz789",
  "temporaryCustomer": false,
  "emailSent": false,
  "apiId": "abc123",
  "apiBillingId": 987,
  "grantWhatsapp": true,
  "billingOperatorId": 987,
  "billingInvoiceAddress": "xyz789",
  "billingReference": "xyz789",
  "billingReferenceRequired": false,
  "info": CustomerInfo,
  "addresses": [Address]
}

CustomerBlacklistEntry

Fields
Field Name Description
id - ID!
customerId - Int!
status - Int!
reason - String!
lastModified - String
Example
{
  "id": "4",
  "customerId": 987,
  "status": 987,
  "reason": "xyz789",
  "lastModified": "abc123"
}

CustomerFavorite

Fields
Field Name Description
id - ID!
customersId - Int!
productsId - Int!
Example
{"id": 4, "customersId": 987, "productsId": 987}

CustomerGroup

Fields
Field Name Description
id - ID!
description - String
discountAmount - Float
discountType - String
dateStart - String
dateEnd - String
minOrder - Float
minOrderType - String
customerType - String
discountedProducts - Int
groupsType - String
dynamicDiscounts - [CustomerGroupDynamicDiscount]
priceList - [CustomerGroupPriceRule]
Example
{
  "id": 4,
  "description": "abc123",
  "discountAmount": 987.65,
  "discountType": "xyz789",
  "dateStart": "abc123",
  "dateEnd": "abc123",
  "minOrder": 987.65,
  "minOrderType": "xyz789",
  "customerType": "abc123",
  "discountedProducts": 987,
  "groupsType": "xyz789",
  "dynamicDiscounts": [CustomerGroupDynamicDiscount],
  "priceList": [CustomerGroupPriceRule]
}

CustomerGroupDynamicDiscount

Fields
Field Name Description
id - ID!
groupId - String
amount - Float
dateStart - String
dateEnd - String
manufacturer - String
category - String
sort - Int
Example
{
  "id": 4,
  "groupId": "xyz789",
  "amount": 123.45,
  "dateStart": "abc123",
  "dateEnd": "xyz789",
  "manufacturer": "abc123",
  "category": "xyz789",
  "sort": 987
}

CustomerGroupPriceRule

Fields
Field Name Description
id - ID!
groupId - String
productId - Int
productStockId - Int
price - Float
validFrom - String
validTo - String
customerGroup - CustomerGroup
product - Product
Example
{
  "id": 4,
  "groupId": "abc123",
  "productId": 123,
  "productStockId": 123,
  "price": 987.65,
  "validFrom": "abc123",
  "validTo": "xyz789",
  "customerGroup": CustomerGroup,
  "product": Product
}

CustomerHistoryEntry

Fields
Field Name Description
id - ID!
customerId - Int!
addressBookId - Int
userId - Int!
userName - String!
sourceTable - String!
fieldName - String!
oldValue - String
newValue - String
page - String
dateAdded - String!
Example
{
  "id": 4,
  "customerId": 987,
  "addressBookId": 987,
  "userId": 987,
  "userName": "abc123",
  "sourceTable": "xyz789",
  "fieldName": "abc123",
  "oldValue": "abc123",
  "newValue": "xyz789",
  "page": "abc123",
  "dateAdded": "abc123"
}

CustomerInfo

Fields
Field Name Description
dateOfLastLogon - String
numberOfLogons - Int
numberOfFailedLogins - Int
dateOfLastLoginFail - String
dateAccountCreated - String
dateAccountLastModified - String
sourceId - Int
globalProductNotifications - Int
Example
{
  "dateOfLastLogon": "xyz789",
  "numberOfLogons": 987,
  "numberOfFailedLogins": 987,
  "dateOfLastLoginFail": "xyz789",
  "dateAccountCreated": "xyz789",
  "dateAccountLastModified": "abc123",
  "sourceId": 987,
  "globalProductNotifications": 123
}

CustomerPrice

Fields
Field Name Description
id - ID!
customerId - Int!
productId - Int!
price - Float!
currency - String
validFrom - String
validTo - String
Example
{
  "id": 4,
  "customerId": 123,
  "productId": 987,
  "price": 123.45,
  "currency": "xyz789",
  "validFrom": "abc123",
  "validTo": "xyz789"
}

CustomerProductInclusion

Fields
Field Name Description
id - ID!
customerId - Int!
productId - Int!
Example
{"id": 4, "customerId": 987, "productId": 987}

CustomerProductInclusionInput

Fields
Input Field Description
customerId - Int!
productId - Int!
Example
{"customerId": 123, "productId": 987}

CustomersApiCustomer

Fields
Field Name Description
asiakaskoodi - String!
name - String
secondaryName - String
addressLine1 - String
addressLine2 - String
addressLine3 - String
deliveryName1 - String
deliveryName2 - String
deliveryName3 - String
billingCustomerId - Int
paymentTerm - String
customerGroup - String
chain - String
salesCode - String
creditLimit - String
deliveryBlock - String
email - String
website - String
phone - String
fax - String
deliveryMethod - String
discountGroup - String
discountPercent - Float
secondaryDiscountPercent - Float
languageCode - String
comment1 - String
comment2 - String
contactPerson - String
contactPersonId - Int
lastLoginAt - String
vatLiability - String
currency - String
modifiedAt - String
businessId - String
billingAddress - String
intermediaryService - String
netvisorKey - Int
Example
{
  "asiakaskoodi": "abc123",
  "name": "xyz789",
  "secondaryName": "xyz789",
  "addressLine1": "abc123",
  "addressLine2": "abc123",
  "addressLine3": "xyz789",
  "deliveryName1": "abc123",
  "deliveryName2": "xyz789",
  "deliveryName3": "xyz789",
  "billingCustomerId": 123,
  "paymentTerm": "abc123",
  "customerGroup": "xyz789",
  "chain": "xyz789",
  "salesCode": "abc123",
  "creditLimit": "xyz789",
  "deliveryBlock": "abc123",
  "email": "abc123",
  "website": "xyz789",
  "phone": "abc123",
  "fax": "xyz789",
  "deliveryMethod": "xyz789",
  "discountGroup": "abc123",
  "discountPercent": 123.45,
  "secondaryDiscountPercent": 123.45,
  "languageCode": "xyz789",
  "comment1": "abc123",
  "comment2": "abc123",
  "contactPerson": "abc123",
  "contactPersonId": 123,
  "lastLoginAt": "abc123",
  "vatLiability": "xyz789",
  "currency": "abc123",
  "modifiedAt": "xyz789",
  "businessId": "abc123",
  "billingAddress": "xyz789",
  "intermediaryService": "xyz789",
  "netvisorKey": 987
}

CustomersBasketItem

Fields
Field Name Description
id - ID!
cartId - String!
customersId - Int!
itemId - String
productId - Int
variants - String
productOptions - String
comment - String
customOptions - String
quantity - Int!
specialPrice - Float
bundleId - String
includes - String
dateAdded - String
emailSent - Int
emailLast - String
variableImage - String
allowSubstitute - Boolean!
Example
{
  "id": "4",
  "cartId": "xyz789",
  "customersId": 987,
  "itemId": "xyz789",
  "productId": 123,
  "variants": "xyz789",
  "productOptions": "abc123",
  "comment": "xyz789",
  "customOptions": "abc123",
  "quantity": 123,
  "specialPrice": 987.65,
  "bundleId": "abc123",
  "includes": "xyz789",
  "dateAdded": "xyz789",
  "emailSent": 987,
  "emailLast": "xyz789",
  "variableImage": "xyz789",
  "allowSubstitute": true
}

CustomersBraintreeToken

Fields
Field Name Description
id - ID!
customersId - Int!
braintreeToken - String!
cardType - String!
numberFiltered - String!
expiryDate - String!
dateAdded - String!
Example
{
  "id": 4,
  "customersId": 123,
  "braintreeToken": "abc123",
  "cardType": "xyz789",
  "numberFiltered": "abc123",
  "expiryDate": "abc123",
  "dateAdded": "abc123"
}

DeliveryAddress

Description

A delivery address entry belonging to a customer.

Fields
Field Name Description
id - ID!
customerId - Int!
gender - String
company - String
firstname - String!
lastname - String!
streetAddress - String!
vatid - String
postcode - String!
city - String!
state - String
countryId - Int!
zoneId - Int!
comments - String
legacyAddressBookId - Int
legacyAddress - AddressBook
Example
{
  "id": "4",
  "customerId": 987,
  "gender": "xyz789",
  "company": "xyz789",
  "firstname": "xyz789",
  "lastname": "abc123",
  "streetAddress": "abc123",
  "vatid": "abc123",
  "postcode": "abc123",
  "city": "xyz789",
  "state": "xyz789",
  "countryId": 123,
  "zoneId": 123,
  "comments": "abc123",
  "legacyAddressBookId": 123,
  "legacyAddress": AddressBook
}

DiscountCoupon

Description

A discount coupon definition. Coupons may be targeted at specific products, categories, customers, manufacturers, or shipping zones.

Fields
Field Name Description
id - ID!
description - String!
amount - Float! Discount value, interpreted according to discountType.
discountType - String!

How the amount is applied. One of:

  • 'fixed': fixed currency amount off the order
  • 'percent': percentage off
  • 'shipping': free shipping
dateStart - String
dateEnd - String
maxUse - Int! Maximum number of times this coupon may be used in total (0 = unlimited).
minOrder - Float! Minimum order threshold for the coupon to apply, interpreted according to minOrderType.
minOrderType - String How minOrder is interpreted: 'price' (currency amount) or 'quantity' (line item count).
numberAvailable - Int! Number of remaining uses across all customers (decremented as the coupon is redeemed).
customerType - String!

Customer eligibility filter:

  • 'all': any customer
  • 'vatid': only customers with a VAT id (B2B)
  • 'regular': only customers without a VAT id (B2C)
discountedProducts - Int
discountedProductsOld - Int
allowedProducts - String
categories - [Int!]
products - [Int!]
customers - [Int!]
orders - [Int!]
manufacturers - [Int!]
shippingMethods - [String!]
zones - [Int!]
Example
{
  "id": 4,
  "description": "abc123",
  "amount": 123.45,
  "discountType": "xyz789",
  "dateStart": "abc123",
  "dateEnd": "abc123",
  "maxUse": 123,
  "minOrder": 987.65,
  "minOrderType": "xyz789",
  "numberAvailable": 987,
  "customerType": "abc123",
  "discountedProducts": 123,
  "discountedProductsOld": 987,
  "allowedProducts": "xyz789",
  "categories": [123],
  "products": [123],
  "customers": [987],
  "orders": [123],
  "manufacturers": [123],
  "shippingMethods": ["abc123"],
  "zones": [123]
}

DiscountCouponCustomerLinkInput

Fields
Input Field Description
couponCode - ID!
customerId - ID!
Example
{
  "couponCode": "4",
  "customerId": "4"
}

Domain

Fields
Field Name Description
id - ID!
languageId - Int!
code - String!
hreflang - String!
domain - String!
cctld - String!
flag - String!
sortOrder - Int
googlePixel - String
googleApiSecret - String
adwordsPixel - String
adwordsPhone - String
adwordsPurchase - String
adwordsContact - String
adwordsQuote - String
metaPixel - String
metaApiSecret - String
tiktokPixel - String
tiktokApiSecret - String
msAdsPixel - String
msAdsPhone - String
msAdsContact - String
msAdsPurchase - String
msAdsQuote - String
pinterestPixel - String
wpDomain - String
openaiChatInstructions - String
openaiVectorStoreId - String
openaiChatAssistantId - String
Example
{
  "id": 4,
  "languageId": 123,
  "code": "abc123",
  "hreflang": "xyz789",
  "domain": "abc123",
  "cctld": "abc123",
  "flag": "abc123",
  "sortOrder": 123,
  "googlePixel": "xyz789",
  "googleApiSecret": "abc123",
  "adwordsPixel": "xyz789",
  "adwordsPhone": "xyz789",
  "adwordsPurchase": "abc123",
  "adwordsContact": "xyz789",
  "adwordsQuote": "xyz789",
  "metaPixel": "abc123",
  "metaApiSecret": "xyz789",
  "tiktokPixel": "xyz789",
  "tiktokApiSecret": "abc123",
  "msAdsPixel": "xyz789",
  "msAdsPhone": "xyz789",
  "msAdsContact": "xyz789",
  "msAdsPurchase": "abc123",
  "msAdsQuote": "abc123",
  "pinterestPixel": "xyz789",
  "wpDomain": "abc123",
  "openaiChatInstructions": "abc123",
  "openaiVectorStoreId": "xyz789",
  "openaiChatAssistantId": "xyz789"
}

ExpireSharedBasketInput

Fields
Input Field Description
sharedCartId - String!
itemId - String!
expiresAt - String
Example
{
  "sharedCartId": "xyz789",
  "itemId": "xyz789",
  "expiresAt": "xyz789"
}

FaqCategory

Fields
Field Name Description
id - ID!
icon - String
image - String
visibility - Int
googleIndex - Int
sortOrder - Int
descriptions - [FaqCategoryDescription]
questions - [FaqQuestion]
Example
{
  "id": "4",
  "icon": "abc123",
  "image": "abc123",
  "visibility": 123,
  "googleIndex": 123,
  "sortOrder": 987,
  "descriptions": [FaqCategoryDescription],
  "questions": [FaqQuestion]
}

FaqCategoryDescription

Fields
Field Name Description
languageId - Int!
name - String
url - String
description - String
metaTitle - String
metaDescription - String
Example
{
  "languageId": 123,
  "name": "abc123",
  "url": "xyz789",
  "description": "abc123",
  "metaTitle": "abc123",
  "metaDescription": "xyz789"
}

FaqQuestion

Fields
Field Name Description
id - ID!
image - String
sortOrder - Int
visibility - Int
googleIndex - Int
enableUrl - Int
categories - [Int]
descriptions - [FaqQuestionDescription]
Example
{
  "id": 4,
  "image": "abc123",
  "sortOrder": 123,
  "visibility": 987,
  "googleIndex": 123,
  "enableUrl": 987,
  "categories": [123],
  "descriptions": [FaqQuestionDescription]
}

FaqQuestionDescription

Fields
Field Name Description
languageId - Int!
question - String
answer - String
shortAnswer - String
url - String
metaTitle - String
metaDescription - String
Example
{
  "languageId": 987,
  "question": "xyz789",
  "answer": "xyz789",
  "shortAnswer": "xyz789",
  "url": "xyz789",
  "metaTitle": "abc123",
  "metaDescription": "xyz789"
}

Float

Description

The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.

Example
123.45

ID

Description

The ID scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an ID.

Example
4

Int

Description

The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

Example
987

JSON

Example
{}

Language

Fields
Field Name Description
id - ID!
code - String!
name - String!
metadata - LanguageMetadata
Example
{
  "id": 4,
  "code": "abc123",
  "name": "abc123",
  "metadata": LanguageMetadata
}

LanguageMetadata

Fields
Field Name Description
image - String
directory - String
Example
{
  "image": "xyz789",
  "directory": "abc123"
}

Manufacturer

Description

A brand or manufacturer associated with one or more products in the catalog.

Fields
Field Name Description
id - ID!
name - String Brand display name.
code - String Internal code or short identifier for the brand.
image - String
brandPageImage - String
listingImage - String
sortOrder - Int
status - Int
dateAdded - String
lastModified - String
fitValue - String
specialDiscount - Int
cmsDescription - Int
countryApprovedProduct - String
displayFrontpage - Int
infos - [ManufacturerInfo]
Example
{
  "id": 4,
  "name": "xyz789",
  "code": "abc123",
  "image": "xyz789",
  "brandPageImage": "abc123",
  "listingImage": "xyz789",
  "sortOrder": 987,
  "status": 123,
  "dateAdded": "abc123",
  "lastModified": "abc123",
  "fitValue": "abc123",
  "specialDiscount": 987,
  "cmsDescription": 123,
  "countryApprovedProduct": "xyz789",
  "displayFrontpage": 987,
  "infos": [ManufacturerInfo]
}

ManufacturerInfo

Fields
Field Name Description
languageId - Int!
urlClicked - Int
dateLastClick - String
description - String
descriptionTop - String
Example
{
  "languageId": 123,
  "urlClicked": 987,
  "dateLastClick": "xyz789",
  "description": "xyz789",
  "descriptionTop": "abc123"
}

Order

Description

A purchase placed by a customer. Includes the customer snapshot at order time, delivery and billing addresses, and the chosen payment and shipping methods.

Fields
Field Name Description
id - ID!
customerId - Int
customerName - String!
customerEmail - String!
customer - OrderParty
deliveryAddress - OrderParty
billingAddress - OrderParty
status - Int!

Numeric status id. Common values across tenants:

  • 1: Received
  • 2: Packing
  • 3: Shipped
  • 9: Under investigation
  • 10: To be picked up
  • 11: Packed
  • 15: Awaiting payment
  • 16: Cancelled
  • 17: Returned
  • 21: Uncollected
  • 23: Backorder

Tenants may extend this set with custom statuses (e.g. payment-provider intermediate states, test orders). Always resolve dynamically via the orderStatuses query rather than hardcoding ids.

datePurchased - String ISO timestamp of when the order was placed.
lastModified - String
currency - String ISO 4217 currency code the order was placed in.
currencyValue - Float
paymentMethod - String Identifier of the chosen payment method (e.g. 'bank_transfer', 'paytrail', 'vivawallet').
shippingMethod - String Identifier of the chosen shipping carrier or method.
shippingCost - Float
trackingCode - String Carrier tracking code. Populated once the order has been shipped.
warehouseCode - String
discountCoupons - [DiscountCoupon]
items - [OrderItem!]!
totals - [OrderTotal!]!
Arguments
class - String
bankPayments - [BankPayment!]!
vivawalletPayments - [OrderVivawalletPayment!]!
Example
{
  "id": "4",
  "customerId": 987,
  "customerName": "abc123",
  "customerEmail": "abc123",
  "customer": OrderParty,
  "deliveryAddress": OrderParty,
  "billingAddress": OrderParty,
  "status": 987,
  "datePurchased": "abc123",
  "lastModified": "xyz789",
  "currency": "xyz789",
  "currencyValue": 123.45,
  "paymentMethod": "xyz789",
  "shippingMethod": "abc123",
  "shippingCost": 987.65,
  "trackingCode": "xyz789",
  "warehouseCode": "xyz789",
  "discountCoupons": [DiscountCoupon],
  "items": [OrderItem],
  "totals": [OrderTotal],
  "bankPayments": [BankPayment],
  "vivawalletPayments": [OrderVivawalletPayment]
}

OrderHistoryEntry

Fields
Field Name Description
id - ID!
orderId - Int!
entityType - String!
entityId - Int
columnName - String!
oldValue - String
newValue - String
actionType - String!
userId - Int
userName - String
page - String
createdAt - String!
Example
{
  "id": 4,
  "orderId": 123,
  "entityType": "abc123",
  "entityId": 987,
  "columnName": "xyz789",
  "oldValue": "abc123",
  "newValue": "abc123",
  "actionType": "abc123",
  "userId": 123,
  "userName": "xyz789",
  "page": "abc123",
  "createdAt": "abc123"
}

OrderItem

Fields
Field Name Description
id - ID!
orderId - Int!
productId - Int
productModel - String
productEan - String
productName - String!
quantity - Int!
quantityReturned - Int!
price - Float!
originalPrice - Float!
tax - Float!
stockVariants - String
lineType - String
variants - [OrderItemVariant!]!
Example
{
  "id": "4",
  "orderId": 123,
  "productId": 987,
  "productModel": "xyz789",
  "productEan": "abc123",
  "productName": "xyz789",
  "quantity": 123,
  "quantityReturned": 123,
  "price": 987.65,
  "originalPrice": 987.65,
  "tax": 123.45,
  "stockVariants": "xyz789",
  "lineType": "abc123",
  "variants": [OrderItemVariant]
}

OrderItemVariant

Fields
Field Name Description
id - ID!
orderProductId - Int!
optionId - Int!
optionName - String!
optionValue - String!
price - Float!
pricePrefix - String
Example
{
  "id": 4,
  "orderProductId": 123,
  "optionId": 987,
  "optionName": "abc123",
  "optionValue": "abc123",
  "price": 987.65,
  "pricePrefix": "xyz789"
}

OrderNetsNotification

Fields
Field Name Description
ordersPaytrailId - Int!
customersId - Int!
notificationId - Int!
sessionId - String
transactionId - String
stamp - String
amount - Float
error - String
Example
{
  "ordersPaytrailId": 987,
  "customersId": 123,
  "notificationId": 987,
  "sessionId": "abc123",
  "transactionId": "xyz789",
  "stamp": "abc123",
  "amount": 123.45,
  "error": "abc123"
}

OrderParty

Fields
Field Name Description
name - String!
company - String
vatId - String
streetAddress - String!
city - String!
postcode - String!
state - String
country - String!
telephone - String
emailAddress - String
addressFormatId - Int
invoiceAddress - String
operatorId - Int
reference - String
Example
{
  "name": "abc123",
  "company": "xyz789",
  "vatId": "abc123",
  "streetAddress": "abc123",
  "city": "abc123",
  "postcode": "abc123",
  "state": "xyz789",
  "country": "abc123",
  "telephone": "abc123",
  "emailAddress": "xyz789",
  "addressFormatId": 123,
  "invoiceAddress": "abc123",
  "operatorId": 987,
  "reference": "abc123"
}

OrderPartyInput

Fields
Input Field Description
name - String
company - String
vatId - String
streetAddress - String
city - String
postcode - String
state - String
countryId - Int
countryCode - String
telephone - String
emailAddress - String
addressFormatId - Int
invoiceAddress - String
operatorId - Int
reference - String
Example
{
  "name": "abc123",
  "company": "xyz789",
  "vatId": "xyz789",
  "streetAddress": "xyz789",
  "city": "abc123",
  "postcode": "xyz789",
  "state": "abc123",
  "countryId": 987,
  "countryCode": "abc123",
  "telephone": "xyz789",
  "emailAddress": "xyz789",
  "addressFormatId": 123,
  "invoiceAddress": "xyz789",
  "operatorId": 987,
  "reference": "xyz789"
}

OrderStatus

Fields
Field Name Description
id - ID!
languageId - Int!
code - String
name - String!
apiFlag - Int!
apiId - String
colorCode - String
Example
{
  "id": "4",
  "languageId": 987,
  "code": "xyz789",
  "name": "xyz789",
  "apiFlag": 123,
  "apiId": "xyz789",
  "colorCode": "abc123"
}

OrderStatusHistory

Fields
Field Name Description
id - ID!
orderId - Int!
statusId - Int!
statusName - String
dateAdded - String!
customerNotified - Int
comments - String
Example
{
  "id": 4,
  "orderId": 987,
  "statusId": 123,
  "statusName": "abc123",
  "dateAdded": "xyz789",
  "customerNotified": 123,
  "comments": "xyz789"
}

OrderTotal

Fields
Field Name Description
id - ID!
orderId - Int!
title - String!
text - String!
value - Float!
valueUnreturned - Float!
class - String!
sortOrder - Int!
Example
{
  "id": "4",
  "orderId": 987,
  "title": "xyz789",
  "text": "xyz789",
  "value": 987.65,
  "valueUnreturned": 123.45,
  "class": "abc123",
  "sortOrder": 987
}

OrderVivawalletPayment

Fields
Field Name Description
id - ID!
orderId - Int!
customerId - Int!
paymentMethod - String!
notificationId - Int!
orderCode - String
transactionUuid - String
sessionId - String
Example
{
  "id": 4,
  "orderId": 123,
  "customerId": 123,
  "paymentMethod": "xyz789",
  "notificationId": 123,
  "orderCode": "abc123",
  "transactionUuid": "xyz789",
  "sessionId": "xyz789"
}

OrdersNetsNotificationInput

Fields
Input Field Description
ordersPaytrailId - Int!
customersId - Int!
notificationId - Int!
sessionId - String
transactionId - String
stamp - String
amount - Float
error - String
Example
{
  "ordersPaytrailId": 987,
  "customersId": 987,
  "notificationId": 987,
  "sessionId": "abc123",
  "transactionId": "abc123",
  "stamp": "abc123",
  "amount": 123.45,
  "error": "abc123"
}

OrdersProduct

Fields
Field Name Description
id - ID!
orderId - Int!
productId - Int
productModel - String
productEan - String
productName - String!
price - Float!
originalPrice - Float!
tax - Float!
quantity - Int!
quantityReturned - Int!
stockVariants - String
lineType - String
comment - String!
customOptions - JSON
Example
{
  "id": 4,
  "orderId": 987,
  "productId": 987,
  "productModel": "abc123",
  "productEan": "xyz789",
  "productName": "abc123",
  "price": 987.65,
  "originalPrice": 987.65,
  "tax": 987.65,
  "quantity": 123,
  "quantityReturned": 123,
  "stockVariants": "abc123",
  "lineType": "xyz789",
  "comment": "abc123",
  "customOptions": {}
}

OrdersProductsVariant

Fields
Field Name Description
id - ID!
orderId - Int!
orderProductId - Int!
optionId - Int!
optionName - String!
optionValue - String!
price - Float!
pricePrefix - String
Example
{
  "id": "4",
  "orderId": 987,
  "orderProductId": 987,
  "optionId": 123,
  "optionName": "xyz789",
  "optionValue": "xyz789",
  "price": 987.65,
  "pricePrefix": "xyz789"
}

OrdersStatusHistoryEntry

Fields
Field Name Description
id - ID!
orderId - Int!
statusId - Int!
dateAdded - String!
customerNotified - Int
comments - String
Example
{
  "id": "4",
  "orderId": 987,
  "statusId": 987,
  "dateAdded": "xyz789",
  "customerNotified": 123,
  "comments": "abc123"
}

OrdersStatusHistoryInput

Fields
Input Field Description
orderId - Int!
statusId - Int!
comments - String
notifyCustomer - Boolean
updateOrderStatus - Boolean
Example
{
  "orderId": 123,
  "statusId": 123,
  "comments": "abc123",
  "notifyCustomer": true,
  "updateOrderStatus": false
}

Product

Description

A product available for sale in the catalog. Localized fields are returned for the language requested via the languageId argument; defaults to the tenant's primary language when omitted.

Fields
Field Name Description
id - ID!
name - String! Display name shown to shoppers.
model - String Manufacturer or vendor SKU/model identifier.
image - String Primary product image filename, served from the tenant's media host.
price - Float! Unit price in the tenant's default currency, exclusive of VAT.
description - String Long-form HTML description used on product detail pages.
shortDescription - String Plain-text summary used in product listings and meta descriptions.
material - String
Example
{
  "id": 4,
  "name": "abc123",
  "model": "abc123",
  "image": "abc123",
  "price": 987.65,
  "description": "abc123",
  "shortDescription": "xyz789",
  "material": "xyz789"
}

ProductCustomOption

Fields
Field Name Description
id - ID!
productId - Int!
productsOptionsId - Int!
required - Boolean!
position - Int!
type - String!
Example
{
  "id": "4",
  "productId": 987,
  "productsOptionsId": 123,
  "required": true,
  "position": 123,
  "type": "xyz789"
}

ProductExtraImage

Fields
Field Name Description
id - ID!
code - String
url - String
sort - Int
optionId - Int
description - String
Example
{
  "id": "4",
  "code": "xyz789",
  "url": "xyz789",
  "sort": 987,
  "optionId": 123,
  "description": "abc123"
}

ProductMedia

Fields
Field Name Description
id - ID!
productId - ID
categoryId - Int
file - String
sortOrder - Int
type - String
size - String
description - String
category - ProductMediaCategory
Example
{
  "id": 4,
  "productId": "4",
  "categoryId": 987,
  "file": "abc123",
  "sortOrder": 123,
  "type": "xyz789",
  "size": "xyz789",
  "description": "abc123",
  "category": ProductMediaCategory
}

ProductMediaCategory

Fields
Field Name Description
id - ID!
code - String
sortOrder - Int
name - String
Example
{
  "id": "4",
  "code": "xyz789",
  "sortOrder": 987,
  "name": "abc123"
}

ProductOption

Fields
Field Name Description
id - ID!
name - String
code - String
description - String
sort - Int
values - [ProductOptionValue]
Example
{
  "id": 4,
  "name": "xyz789",
  "code": "abc123",
  "description": "abc123",
  "sort": 123,
  "values": [ProductOptionValue]
}

ProductOptionValue

Fields
Field Name Description
id - ID!
name - String
code - String
specification - String
weight - Float
sort - Int
hex - String
priceDelta - Float
pricePrefix - String
apiId - String
Example
{
  "id": 4,
  "name": "xyz789",
  "code": "abc123",
  "specification": "abc123",
  "weight": 123.45,
  "sort": 123,
  "hex": "xyz789",
  "priceDelta": 987.65,
  "pricePrefix": "abc123",
  "apiId": "xyz789"
}

ProductPriceHistory

Fields
Field Name Description
id - ID!
productId - ID!
stockId - ID!
price - Float!
date - String!
userName - String!
Example
{
  "id": "4",
  "productId": 4,
  "stockId": 4,
  "price": 987.65,
  "date": "abc123",
  "userName": "xyz789"
}

ProductStock

Fields
Field Name Description
id - ID!
productId - ID!
variant - String
quantity - Int!
price - Float!
priceOriginal - Float!
shelf - String
Example
{
  "id": "4",
  "productId": 4,
  "variant": "xyz789",
  "quantity": 123,
  "price": 123.45,
  "priceOriginal": 123.45,
  "shelf": "abc123"
}

ProductVolumeAddonPriceTier

Fields
Field Name Description
minimumQuantity - Int!
unitPrice - Float!
Example
{"minimumQuantity": 123, "unitPrice": 123.45}

ProductVolumeDiscountTier

Fields
Field Name Description
minimumQuantity - Int!
discountPercentage - Float!
customerGroupId - String
customerId - Int
customerType - String
Example
{
  "minimumQuantity": 123,
  "discountPercentage": 123.45,
  "customerGroupId": "abc123",
  "customerId": 987,
  "customerType": "abc123"
}

Quote

Description

A quote (B2B request-for-pricing) created by or on behalf of a customer. Quotes can be tied to a customer account or anonymous via sessionId, and progress through status states until accepted or expired.

Fields
Field Name Description
id - ID!
customerId - Int
sessionId - String Anonymous browser session identifier when the quote is created without a customer account.
ipAddress - String
statusId - Int

Numeric status id of the quote. Common values:

  • 1: Open (received)
  • 2: Accepted
  • 3: Cancelled
  • 4: Ordered (converted to an order)
  • 5: Proposal sent
  • 50: Pending approval

Tenants may extend this set. Always resolve dynamically via the quoteStatuses query.

dateAdded - String
dateModified - String
dateReminder - String
dateFollowUp - String
sendReminder - String
sendFollowUp - String
discountType - String How the discountAmount is interpreted. One of: 'fixed' (currency amount), 'percent' (percentage off), or 'shipping' (free shipping). Defaults to 'fixed' on new quotes.
discountAmount - Float Discount value to apply, interpreted according to discountType.
comment - String
cc - String
shipmentMethod - String
shipmentCode - String
shipmentPrice - Float
warehouseId - Int
items - [QuoteProduct!]!
Example
{
  "id": "4",
  "customerId": 987,
  "sessionId": "abc123",
  "ipAddress": "abc123",
  "statusId": 123,
  "dateAdded": "xyz789",
  "dateModified": "abc123",
  "dateReminder": "abc123",
  "dateFollowUp": "xyz789",
  "sendReminder": "xyz789",
  "sendFollowUp": "abc123",
  "discountType": "xyz789",
  "discountAmount": 123.45,
  "comment": "abc123",
  "cc": "abc123",
  "shipmentMethod": "abc123",
  "shipmentCode": "abc123",
  "shipmentPrice": 987.65,
  "warehouseId": 987,
  "items": [QuoteProduct]
}

QuoteFile

Fields
Field Name Description
id - ID!
quoteId - Int!
file - String!
Example
{"id": 4, "quoteId": 123, "file": "xyz789"}

QuoteGroup

Fields
Field Name Description
id - ID!
languageId - Int!
name - String!
Example
{
  "id": 4,
  "languageId": 987,
  "name": "abc123"
}

QuoteNotificationFlagsInput

Fields
Input Field Description
sendReminder - Boolean
sendFollowUp - Boolean
Example
{"sendReminder": true, "sendFollowUp": true}

QuoteProduct

Description

A line item on a quote — references a product, an optional variant, quantity, and any per-line pricing overrides.

Fields
Field Name Description
id - ID!
quoteId - ID!
productId - Int!
variant - String!
quantity - Int!
discountedPrice - Float Per-line negotiated price override. Null means use the product's catalog price.
productGroup - Int Line-item bundle/pricing-rule grouping marker. 0 means ungrouped (the default for most lines). Non-zero groups multiple lines together for combined discount calculation or kit-style packaging.
comment - String
customOptions - String
bundleId - Int Bundle id this line belongs to, when the line is part of a configured product bundle. 0 means standalone line.
Example
{
  "id": 4,
  "quoteId": "4",
  "productId": 987,
  "variant": "abc123",
  "quantity": 123,
  "discountedPrice": 123.45,
  "productGroup": 123,
  "comment": "abc123",
  "customOptions": "xyz789",
  "bundleId": 123
}

QuoteProductInput

Fields
Input Field Description
productId - Int!
variant - String!
quantity - Int
discountedPrice - Float
productGroup - Int
comment - String
customOptions - String
bundleId - Int
Example
{
  "productId": 987,
  "variant": "abc123",
  "quantity": 123,
  "discountedPrice": 987.65,
  "productGroup": 123,
  "comment": "xyz789",
  "customOptions": "xyz789",
  "bundleId": 987
}

QuoteStatus

Fields
Field Name Description
id - ID!
languageId - Int!
name - String!
code - String!
Example
{
  "id": 4,
  "languageId": 987,
  "name": "abc123",
  "code": "abc123"
}

QuoteStatusEntry

Fields
Field Name Description
id - ID!
quoteId - Int!
statusId - Int!
statusName - String
dateAdded - String!
customerNotified - Int
comments - String
Example
{
  "id": 4,
  "quoteId": 123,
  "statusId": 987,
  "statusName": "xyz789",
  "dateAdded": "xyz789",
  "customerNotified": 987,
  "comments": "xyz789"
}

RemoveCustomerFavoriteInput

Fields
Input Field Description
id - ID
customersId - Int
productsId - Int
Example
{"id": 4, "customersId": 987, "productsId": 123}

Review

Description

A customer review of a product, with optional vendor reply via ReviewDetail.answer.

Fields
Field Name Description
id - ID!
productId - ID!
customerId - Int
nickname - String Public display name shown alongside the review.
country - String
isRecommended - Boolean True if the reviewer would recommend the product.
verifiedBuyer - Boolean True if the reviewer is a verified purchaser of the product.
count - Int
statusId - Int
statusCode - String
dates - ReviewDates
details - [ReviewDetail]
Example
{
  "id": "4",
  "productId": "4",
  "customerId": 123,
  "nickname": "abc123",
  "country": "xyz789",
  "isRecommended": true,
  "verifiedBuyer": true,
  "count": 987,
  "statusId": 987,
  "statusCode": "abc123",
  "dates": ReviewDates,
  "details": [ReviewDetail]
}

ReviewDates

Fields
Field Name Description
createdAt - String
orderDate - String
answerDate - String
Example
{
  "createdAt": "xyz789",
  "orderDate": "abc123",
  "answerDate": "xyz789"
}

ReviewDetail

Fields
Field Name Description
languageId - Int
title - String
detail - String
answer - String
Example
{
  "languageId": 123,
  "title": "xyz789",
  "detail": "xyz789",
  "answer": "abc123"
}

ReviewSummary

Description

Aggregate review metrics for a product.

Fields
Field Name Description
productId - ID!
reviewsCount - Int Total count of approved reviews for this product.
ratingSummary - Int Aggregate star rating (1–5 scale).
Example
{"productId": 4, "reviewsCount": 987, "ratingSummary": 987}

Service

Fields
Field Name Description
id - ID!
categoryId - Int
image - String
sortOrder - Int
displayFooter - Int
googleFeed - Int
css - String
externalJs - String
externalCss - String
svgIcon - String
descriptions - [ServiceDescription]
category - ServiceCategory
Example
{
  "id": "4",
  "categoryId": 987,
  "image": "xyz789",
  "sortOrder": 987,
  "displayFooter": 987,
  "googleFeed": 123,
  "css": "abc123",
  "externalJs": "abc123",
  "externalCss": "abc123",
  "svgIcon": "abc123",
  "descriptions": [ServiceDescription],
  "category": ServiceCategory
}

ServiceCategory

Fields
Field Name Description
id - ID!
parentId - Int
sortOrder - Int
displayFooter - Int
svgIcon - String
descriptions - [ServiceCategoryDescription]
children - [ServiceCategory]
Example
{
  "id": "4",
  "parentId": 987,
  "sortOrder": 987,
  "displayFooter": 987,
  "svgIcon": "xyz789",
  "descriptions": [ServiceCategoryDescription],
  "children": [ServiceCategory]
}

ServiceCategoryDescription

Fields
Field Name Description
languageId - Int!
name - String
url - String
html - String
Example
{
  "languageId": 123,
  "name": "abc123",
  "url": "xyz789",
  "html": "abc123"
}

ServiceDescription

Fields
Field Name Description
languageId - Int!
name - String
url - String
html - String
metaTitle - String
metaDescription - String
Example
{
  "languageId": 123,
  "name": "abc123",
  "url": "xyz789",
  "html": "abc123",
  "metaTitle": "abc123",
  "metaDescription": "abc123"
}

SharedBasketItem

Fields
Field Name Description
id - ID!
sharedCartId - String!
customersId - Int
itemId - String
productId - Int
variants - String
productOptions - String
comment - String
customOptions - String
quantity - Int!
specialPrice - Float
bundleId - String
includes - String
dateAdded - String
expiresAt - String
Example
{
  "id": 4,
  "sharedCartId": "abc123",
  "customersId": 987,
  "itemId": "abc123",
  "productId": 987,
  "variants": "xyz789",
  "productOptions": "abc123",
  "comment": "abc123",
  "customOptions": "abc123",
  "quantity": 987,
  "specialPrice": 987.65,
  "bundleId": "abc123",
  "includes": "abc123",
  "dateAdded": "abc123",
  "expiresAt": "abc123"
}

String

Description

The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

Example
"abc123"

UpdateOrdersProductInput

Fields
Input Field Description
orderId - ID
productId - Int
productModel - String
productEan - String
productName - String
price - Float
originalPrice - Float
tax - Float
quantity - Int
stockVariants - String
lineType - String
comment - String
customOptions - JSON
Example
{
  "orderId": "4",
  "productId": 123,
  "productModel": "xyz789",
  "productEan": "abc123",
  "productName": "xyz789",
  "price": 123.45,
  "originalPrice": 987.65,
  "tax": 987.65,
  "quantity": 987,
  "stockVariants": "abc123",
  "lineType": "xyz789",
  "comment": "abc123",
  "customOptions": {}
}

UpdateOrdersProductsVariantInput

Fields
Input Field Description
orderId - ID
orderProductId - ID
optionId - Int
optionName - String
optionValue - String
price - Float
pricePrefix - String
Example
{
  "orderId": "4",
  "orderProductId": 4,
  "optionId": 123,
  "optionName": "abc123",
  "optionValue": "xyz789",
  "price": 987.65,
  "pricePrefix": "xyz789"
}

UpdateProductCustomOptionInput

Fields
Input Field Description
productId - Int
productsOptionsId - Int
required - Boolean
position - Int
type - String
Example
{
  "productId": 987,
  "productsOptionsId": 987,
  "required": false,
  "position": 987,
  "type": "abc123"
}

UpdateSharedBasketQuantityInput

Fields
Input Field Description
sharedCartId - String!
itemId - String!
quantity - Int!
requireActive - Boolean
Example
{
  "sharedCartId": "abc123",
  "itemId": "abc123",
  "quantity": 987,
  "requireActive": true
}

Warehouse

Fields
Field Name Description
id - ID!
name - String
code - String
phone - String
email - String
visible - Boolean!
stock - [WarehouseStock]
Arguments
productId - Int
Example
{
  "id": "4",
  "name": "abc123",
  "code": "xyz789",
  "phone": "xyz789",
  "email": "abc123",
  "visible": true,
  "stock": [WarehouseStock]
}

WarehouseStock

Fields
Field Name Description
id - ID!
warehouseId - Int!
productId - Int!
quantity - Int!
Example
{"id": 4, "warehouseId": 123, "productId": 987, "quantity": 987}