Redirect 302 redirect from GET @app_home (850380)

GET https://spot-symfony.dev.sit.svc.odj.cloud/de/login

GraphQL requests

2 HTTP queries on GraphQL endpoint(s)

Refresh with latest query
404 December 19, 2025 18:10 07c721
# Time Info
404 December 18, 2025 21:29 22cd70
# Time Info

Schema: default

type Query {
  users(filter: UserFilterFields): [User!]!
  userById(id: String!): User
  companies(filter: CompanyFilterFields): [Company!]!
  companyById(id: String!): CompanyPayload
  suppliers(filter: SupplierFilterFields): [Supplier!]!
  supplierById(id: String): [Supplier!]
  materialTypes(filter: MaterialTypeFilterFields): [MaterialType!]!
  materialTypeById(id: String!): MaterialType
  packagingTypes(filter: PackagingTypeFilterFields): [PackagingType!]!
  packagingTypeById(id: String!): PackagingType
  coatingTypes(filter: CoatingTypeFilterFields): [CoatingType!]!
  coatingTypeById(id: String!): CoatingType
  ruleTypes(filter: RuleTypeFilterFields): [RuleType!]!
  ruleTypeById(id: String!): RuleType
  measurementUnits(filter: MeasurementUnitFilterFields): [MeasurementUnit!]!
  measurementUnitById(id: String!): User
  packagingUnits(filter: PackagingUnitFilterFields): [PackagingUnit!]!
  packagingUnitById(id: String!): PackagingUnit
  packagingComponents(filter: PackagingComponentFilterFields): [PackagingComponent!]!
  packagingComponentById(id: String!): PackagingComponent
  articles(filter: ArticleFilterFields, paging: PagingInputFields): ArticlesPayload!
  articleById(id: String!): ArticlePayload
  articleVersions(filter: ArticleVersionFilterFields): [ArticleVersion!]!
  articleVersionById(id: String!): ArticleVersion
  rules(filter: RuleFilterFields): [Rule!]!
  ruleById(id: String!): ArticleVersion
  settings(filter: SettingFilterFields): [Setting!]!
  settingBySlug(slug: String!): Setting
  widgetRecyclabilityPieChartDMS(filter: RecyclabilityPieChartDMSFilterFields, ruleTypeFilter: TableRulesRuleTypeFilter, widgetFilter: TableRulesDMSWidgetFilter): RecyclabilityPieChartDMS!
  widgetRecyclingBarriersTableDMS(filter: RecyclingBarriersTableDMSFilterFields, ruleTypeFilter: TableRulesRuleTypeFilter): RecyclingBarriersTableDMS!
  widgetRecyclingRouteTableDMS(filter: RecyclingRouteTableDMSFilterFields, ruleTypeFilter: TableRulesRuleTypeFilter): RecyclingRouteTableDMS!
  widgetSortingBarriersTableDMS(filter: SortingBarriersTableDMSFilterFields, ruleTypeFilter: TableRulesRuleTypeFilter): SortingBarriersTableDMS!
  widgetSubmissionBarChartDMS(filter: SubmissionBarChartDMSFilterFields, ruleTypeFilter: TableRulesRuleTypeFilter): SubmissionBarChartDMSList!
  widgetProcessingBarChartDMS(filter: ProcessingBarChartDMSFilterFields, ruleTypeFilter: TableRulesRuleTypeFilter, widgetFilter: TableRulesDMSWidgetFilter): ProcessingBarChartDMS!
  widgetMainComponentTableDMS(filter: MainComponentTableDMSFilterFields): MainComponentTableDMS!
  widgetFieldTestSubmittedPieChartDMS(filter: FieldTestSubmittedPieChartDMSFilterFields, ruleTypeFilter: TableRulesRuleTypeFilter): FieldTestSubmittedPieChartDMS!
  widgetFieldTestProgressHeroDMS(filter: FieldTestProgressHeroDMSFilterFields, ruleTypeFilter: TableRulesRuleTypeFilter): FieldTestProgressHeroDMS!
  widgetFieldTestNotSubmittedPieChartDMS(filter: FieldTestNotSubmittedPieChartDMSFilterFields, ruleTypeFilter: TableRulesRuleTypeFilter): FieldTestNotSubmittedPieChartDMS!
  widgetFieldTestAvailableHeroDMS(filter: FieldTestAvailableHeroDMSFilterFields, ruleTypeFilter: TableRulesRuleTypeFilter): FieldTestAvailableHeroDMS!
  widgetArticleNotSubmittedBarChartDMS(filter: ArticleNotSubmittedBarChartDMSFilterFields, ruleTypeFilter: TableRulesRuleTypeFilter): ArticleNotSubmittedBarChartDMS!
  tablePackagingUnits(filter: TablePackagingUnitsFilterFields, paging: PagingInputFields, search: String, sort: SortInputFields): TablePackagingUnits!
  tableRulesDMS(filter: tableRulesDMSFilterFields, paging: PagingInputFields, search: String, sort: SortInputFields, widgetFilter: TableRulesDMSWidgetFilter, ruleTypeFilter: TableRulesRuleTypeFilter): tableRulesDMS!
  tableArticles(filter: TableArticlesFilterFields, paging: PagingInputFields, search: String, sort: SortInputFields): TableArticles!
}

input UserFilterFields {
  id: String
  id_not: String
  id_in: [String]
  id_not_in: [String]
  id_starts_with: String
  id_not_starts_with: String
  id_ends_with: String
  id_not_ends_with: String
  id_contains: String
  id_not_contains: String
  email: String
  email_not: String
  email_in: [String]
  email_not_in: [String]
  email_starts_with: String
  email_not_starts_with: String
  email_ends_with: String
  email_not_ends_with: String
  email_contains: String
  email_not_contains: String
  firstname: String
  firstname_not: String
  firstname_in: [String]
  firstname_not_in: [String]
  firstname_starts_with: String
  firstname_not_starts_with: String
  firstname_ends_with: String
  firstname_not_ends_with: String
  firstname_contains: String
  firstname_not_contains: String
  lastname: String
  lastname_not: String
  lastname_in: [String]
  lastname_not_in: [String]
  lastname_starts_with: String
  lastname_not_starts_with: String
  lastname_ends_with: String
  lastname_not_ends_with: String
  lastname_contains: String
  lastname_not_contains: String
  status: Int
  status_not: Int
  status_in: [Int]
  status_not_in: [Int]
  status_lt: Int
  status_gt: Int
  status_lte: Int
  status_gte: Int
}

"User"
type User {
  id: String
  email: String
  status: String
  firstname: String
  lastname: String
  roles: [String]
  company: Company
}

"Company"
type Company {
  id: String
  name: String
  additional: Iterable
  features: CompanyFeatures
  suppliers(filter: SupplierFilterFields): [Supplier!]!
  users(filter: UserFilterFields): [User!]!
  articles(filter: ArticleFilterFields): [Article!]!
}

scalar Iterable

"Additional features specific for company"
type CompanyFeatures {
  imports: [ImportDefinition]
  exports: [ExportDefinition]
}

"Definition for import from file option"
type ImportDefinition {
  identifier: String!
  text: String!
}

"Definition for export to file option"
type ExportDefinition {
  identifier: String!
  text: String!
}

input SupplierFilterFields {
  id: String
  id_not: String
  id_in: [String]
  id_not_in: [String]
  id_starts_with: String
  id_not_starts_with: String
  id_ends_with: String
  id_not_ends_with: String
  id_contains: String
  id_not_contains: String
  name: String
  name_not: String
  name_in: [String]
  name_not_in: [String]
  name_starts_with: String
  name_not_starts_with: String
  name_ends_with: String
  name_not_ends_with: String
  name_contains: String
  name_not_contains: String
  supplierCustomId: String
  supplierCustomId_not: String
  supplierCustomId_in: [String]
  supplierCustomId_not_in: [String]
  supplierCustomId_starts_with: String
  supplierCustomId_not_starts_with: String
  supplierCustomId_ends_with: String
  supplierCustomId_not_ends_with: String
  supplierCustomId_contains: String
  supplierCustomId_not_contains: String
}

"Supplier"
type Supplier {
  id: String
  supplierCustomId: String
  name: String
}

input ArticleFilterFields {
  company: String
  company_not: String
  company_in: [String]
  company_not_in: [String]
  company_starts_with: String
  company_not_starts_with: String
  company_ends_with: String
  company_not_ends_with: String
  company_contains: String
  company_not_contains: String
  id: String
  id_not: String
  id_in: [String]
  id_not_in: [String]
  id_starts_with: String
  id_not_starts_with: String
  id_ends_with: String
  id_not_ends_with: String
  id_contains: String
  id_not_contains: String
  name: String
  name_not: String
  name_in: [String]
  name_not_in: [String]
  name_starts_with: String
  name_not_starts_with: String
  name_ends_with: String
  name_not_ends_with: String
  name_contains: String
  name_not_contains: String
  status: Int
  status_not: Int
  status_in: [Int]
  status_not_in: [Int]
  status_lt: Int
  status_gt: Int
  status_lte: Int
  status_gte: Int
  supplier: String
  supplier_not: String
  supplier_in: [String]
  supplier_not_in: [String]
  supplier_starts_with: String
  supplier_not_starts_with: String
  supplier_ends_with: String
  supplier_not_ends_with: String
  supplier_contains: String
  supplier_not_contains: String
  category: Iterable
  additional: Iterable
}

"Article"
type Article {
  id: String
  name: String
  internalid: String
  measurementUnit: MeasurementUnit
  supplier: Supplier
  amount: Float
  supplierArticleNumber: String
  status: Int
  additional: Iterable
  category: Iterable
  company: Company
  articleVersions(filter: ArticleVersionFilterFields): [ArticleVersion!]!
  articleHistory(filter: ArticleHistoryFilterFields): [ArticleHistory!]!
}

"Measurement unit"
type MeasurementUnit {
  id: String
  name: String
  slug: String
}

input ArticleVersionFilterFields {
  id: String
  id_not: String
  id_in: [String]
  id_not_in: [String]
  id_starts_with: String
  id_not_starts_with: String
  id_ends_with: String
  id_not_ends_with: String
  id_contains: String
  id_not_contains: String
  name: String
  name_not: String
  name_in: [String]
  name_not_in: [String]
  name_starts_with: String
  name_not_starts_with: String
  name_ends_with: String
  name_not_ends_with: String
  name_contains: String
  name_not_contains: String
  status: Int
  status_not: Int
  status_in: [Int]
  status_not_in: [Int]
  status_lt: Int
  status_gt: Int
  status_lte: Int
  status_gte: Int
  validfrom: Date
  validfrom_not: Date
  validfrom_in: [Date]
  validfrom_not_in: [Date]
  validfrom_lt: Date
  validfrom_gt: Date
  validfrom_lte: Date
  validfrom_gte: Date
  validuntil: Date
  validuntil_not: Date
  validuntil_in: [Date]
  validuntil_not_in: [Date]
  validuntil_lt: Date
  validuntil_gt: Date
  validuntil_lte: Date
  validuntil_gte: Date
  additional: Iterable
  company: String
  company_not: String
  company_in: [String]
  company_not_in: [String]
  company_starts_with: String
  company_not_starts_with: String
  company_ends_with: String
  company_not_ends_with: String
  company_contains: String
  company_not_contains: String
}

scalar Date

"Article version"
type ArticleVersion {
  id: String
  name: String
  status: Int
  type: Int
  gtin: String
  validfrom: Date
  validuntil: Date
  version: Int
  comment: String
  articleNumber: String
  imageLink: String
  additional: Iterable
  packagingUnits(filter: PackagingUnitFilterFields): [PackagingUnit!]!
  article: Article
}

input PackagingUnitFilterFields {
  id: String
  id_not: String
  id_in: [String]
  id_not_in: [String]
  id_starts_with: String
  id_not_starts_with: String
  id_ends_with: String
  id_not_ends_with: String
  id_contains: String
  id_not_contains: String
  status: Int
  status_not: Int
  status_in: [Int]
  status_not_in: [Int]
  status_lt: Int
  status_gt: Int
  status_lte: Int
  status_gte: Int
  packagingType: String
  packagingType_not: String
  packagingType_in: [String]
  packagingType_not_in: [String]
  packagingType_starts_with: String
  packagingType_not_starts_with: String
  packagingType_ends_with: String
  packagingType_not_ends_with: String
  packagingType_contains: String
  packagingType_not_contains: String
  additional: Iterable
  result: Iterable
  evaluation: Iterable
  company: String
  company_not: String
  company_in: [String]
  company_not_in: [String]
  company_starts_with: String
  company_not_starts_with: String
  company_ends_with: String
  company_not_ends_with: String
  company_contains: String
  company_not_contains: String
}

"Packaging unit"
type PackagingUnit {
  id: String
  status: Int
  packagingComponents(filter: PackagingComponentFilterFields): [PackagingComponent!]!
  packagingType: PackagingType
  additional: Iterable
  result: Iterable
  articleVersion: ArticleVersion
  evaluation: Iterable
  questions: [RuleQuestion]
  rules(filter: RuleFilterFields): [Rule!]!
}

input PackagingComponentFilterFields {
  id: String
  id_not: String
  id_in: [String]
  id_not_in: [String]
  id_starts_with: String
  id_not_starts_with: String
  id_ends_with: String
  id_not_ends_with: String
  id_contains: String
  id_not_contains: String
  status: Int
  status_not: Int
  status_in: [Int]
  status_not_in: [Int]
  status_lt: Int
  status_gt: Int
  status_lte: Int
  status_gte: Int
  packagingType: String
  packagingType_not: String
  packagingType_in: [String]
  packagingType_not_in: [String]
  packagingType_starts_with: String
  packagingType_not_starts_with: String
  packagingType_ends_with: String
  packagingType_not_ends_with: String
  packagingType_contains: String
  packagingType_not_contains: String
  materialType: String
  materialType_not: String
  materialType_in: [String]
  materialType_not_in: [String]
  materialType_starts_with: String
  materialType_not_starts_with: String
  materialType_ends_with: String
  materialType_not_ends_with: String
  materialType_contains: String
  materialType_not_contains: String
  additional: Iterable
  result: Iterable
  company: String
  company_not: String
  company_in: [String]
  company_not_in: [String]
  company_starts_with: String
  company_not_starts_with: String
  company_ends_with: String
  company_not_ends_with: String
  company_contains: String
  company_not_contains: String
}

"Rule"
type PackagingComponent {
  id: String
  status: Int
  additional: Iterable
  result: Iterable
  questions: [RuleQuestion]
  packagingType: PackagingType
  materialType: MaterialType
  layers: [Layer]
}

"Rule metadata question"
type RuleQuestion {
  id: String
  type: String
  default: String
  label: String
  tooltip: String
  page: String
  group: String
  context: RuleQuestionContext
  options: RuleQuestionOptions
}

"Rule question context"
type RuleQuestionContext {
  type: String
  id: String
}

"Rule question type specific options"
type RuleQuestionOptions {
  required: Boolean
  disabled: Boolean
  min: Float
  max: Float
  precision: Int
  stepSize: Float
  minLength: Int
  maxLength: Int
  pattern: String
  values: [RuleQuestionValue]
  materialLevel: Int
  minLayer: Int
  maxLayer: Int
}

"Rule question possible value"
type RuleQuestionValue {
  id: String
  name: String
}

"Packaging type"
type PackagingType {
  id: String
  name: String
  slug: String
  level: Int
}

"Material type"
type MaterialType {
  id: String
  name: String
  slug: String
  level: Int
}

"Packaging component layer"
type Layer {
  id: String
  areaScm: Float
  arealWeightGscm: Float
  thicknessMicrom: Float
  fillersPercentage: Float
  fillersDensity: Float
  sortOrder: Int
  materialTypeId: String
  materialType: MaterialType
  coatingTypeId: String
  coatingType: CoatingType
}

"Coating type"
type CoatingType {
  id: String
  name: String
  slug: String
}

input RuleFilterFields {
  id: String
  id_not: String
  id_in: [String]
  id_not_in: [String]
  id_starts_with: String
  id_not_starts_with: String
  id_ends_with: String
  id_not_ends_with: String
  id_contains: String
  id_not_contains: String
  ruleType: String
  ruleType_not: String
  ruleType_in: [String]
  ruleType_not_in: [String]
  ruleType_starts_with: String
  ruleType_not_starts_with: String
  ruleType_ends_with: String
  ruleType_not_ends_with: String
  ruleType_contains: String
  ruleType_not_contains: String
  status: Int
  status_not: Int
  status_in: [Int]
  status_not_in: [Int]
  status_lt: Int
  status_gt: Int
  status_lte: Int
  status_gte: Int
  stateModifiedAt: Date
  stateModifiedAt_not: Date
  stateModifiedAt_in: [Date]
  stateModifiedAt_not_in: [Date]
  stateModifiedAt_lt: Date
  stateModifiedAt_gt: Date
  stateModifiedAt_lte: Date
  stateModifiedAt_gte: Date
  result: Iterable
  evaluation: Iterable
  company: String
  company_not: String
  company_in: [String]
  company_not_in: [String]
  company_starts_with: String
  company_not_starts_with: String
  company_ends_with: String
  company_not_ends_with: String
  company_contains: String
  company_not_contains: String
}

"Rule"
type Rule {
  id: String
  ruleType: RuleType
  result: Iterable
  status: Int
  stateModifiedAt: Date
  evaluation: Iterable
  certificateLink: String
  questions: [RuleQuestion]
  packagingUnit: PackagingUnit
  attachments: [RuleAttachment]
  relatedRules: [Rule]
}

"Rule type"
type RuleType {
  id: String
  name: String
  slug: String
  type: [String]
  additional: Iterable
}

"Attached file to rules"
type RuleAttachment {
  id: ID!
  fileName: String
  fileLink: String
}

input ArticleHistoryFilterFields {
  id: String
  id_not: String
  id_in: [String]
  id_not_in: [String]
  id_starts_with: String
  id_not_starts_with: String
  id_ends_with: String
  id_not_ends_with: String
  id_contains: String
  id_not_contains: String
  event: String
  event_not: String
  event_in: [String]
  event_not_in: [String]
  event_starts_with: String
  event_not_starts_with: String
  event_ends_with: String
  event_not_ends_with: String
  event_contains: String
  event_not_contains: String
}

"Article history"
type ArticleHistory {
  id: String
  event: String!
}

input CompanyFilterFields {
  id: String
  id_not: String
  id_in: [String]
  id_not_in: [String]
  id_starts_with: String
  id_not_starts_with: String
  id_ends_with: String
  id_not_ends_with: String
  id_contains: String
  id_not_contains: String
  name: String
  name_not: String
  name_in: [String]
  name_not_in: [String]
  name_starts_with: String
  name_not_starts_with: String
  name_ends_with: String
  name_not_ends_with: String
  name_contains: String
  name_not_contains: String
}

type CompanyPayload {
  company: Company!
}

input MaterialTypeFilterFields {
  id: String
  id_not: String
  id_in: [String]
  id_not_in: [String]
  id_starts_with: String
  id_not_starts_with: String
  id_ends_with: String
  id_not_ends_with: String
  id_contains: String
  id_not_contains: String
  name: String
  name_not: String
  name_in: [String]
  name_not_in: [String]
  name_starts_with: String
  name_not_starts_with: String
  name_ends_with: String
  name_not_ends_with: String
  name_contains: String
  name_not_contains: String
  slug: String
  slug_not: String
  slug_in: [String]
  slug_not_in: [String]
  slug_starts_with: String
  slug_not_starts_with: String
  slug_ends_with: String
  slug_not_ends_with: String
  slug_contains: String
  slug_not_contains: String
}

input PackagingTypeFilterFields {
  id: String
  id_not: String
  id_in: [String]
  id_not_in: [String]
  id_starts_with: String
  id_not_starts_with: String
  id_ends_with: String
  id_not_ends_with: String
  id_contains: String
  id_not_contains: String
  name: String
  name_not: String
  name_in: [String]
  name_not_in: [String]
  name_starts_with: String
  name_not_starts_with: String
  name_ends_with: String
  name_not_ends_with: String
  name_contains: String
  name_not_contains: String
  slug: String
  slug_not: String
  slug_in: [String]
  slug_not_in: [String]
  slug_starts_with: String
  slug_not_starts_with: String
  slug_ends_with: String
  slug_not_ends_with: String
  slug_contains: String
  slug_not_contains: String
}

input CoatingTypeFilterFields {
  id: String
  id_not: String
  id_in: [String]
  id_not_in: [String]
  id_starts_with: String
  id_not_starts_with: String
  id_ends_with: String
  id_not_ends_with: String
  id_contains: String
  id_not_contains: String
  name: String
  name_not: String
  name_in: [String]
  name_not_in: [String]
  name_starts_with: String
  name_not_starts_with: String
  name_ends_with: String
  name_not_ends_with: String
  name_contains: String
  name_not_contains: String
  slug: String
  slug_not: String
  slug_in: [String]
  slug_not_in: [String]
  slug_starts_with: String
  slug_not_starts_with: String
  slug_ends_with: String
  slug_not_ends_with: String
  slug_contains: String
  slug_not_contains: String
}

input RuleTypeFilterFields {
  id: String
  id_not: String
  id_in: [String]
  id_not_in: [String]
  id_starts_with: String
  id_not_starts_with: String
  id_ends_with: String
  id_not_ends_with: String
  id_contains: String
  id_not_contains: String
  name: String
  name_not: String
  name_in: [String]
  name_not_in: [String]
  name_starts_with: String
  name_not_starts_with: String
  name_ends_with: String
  name_not_ends_with: String
  name_contains: String
  name_not_contains: String
  slug: String
  slug_not: String
  slug_in: [String]
  slug_not_in: [String]
  slug_starts_with: String
  slug_not_starts_with: String
  slug_ends_with: String
  slug_not_ends_with: String
  slug_contains: String
  slug_not_contains: String
}

input MeasurementUnitFilterFields {
  id: String
  id_not: String
  id_in: [String]
  id_not_in: [String]
  id_starts_with: String
  id_not_starts_with: String
  id_ends_with: String
  id_not_ends_with: String
  id_contains: String
  id_not_contains: String
  name: String
  name_not: String
  name_in: [String]
  name_not_in: [String]
  name_starts_with: String
  name_not_starts_with: String
  name_ends_with: String
  name_not_ends_with: String
  name_contains: String
  name_not_contains: String
  slug: String
  slug_not: String
  slug_in: [String]
  slug_not_in: [String]
  slug_starts_with: String
  slug_not_starts_with: String
  slug_ends_with: String
  slug_not_ends_with: String
  slug_contains: String
  slug_not_contains: String
}

input PagingInputFields {
  offset: Int
  limit: Int
}

type ArticlesPayload {
  records: [Article!]
  summary: QuerySummary!
}

"Summary of query result"
type QuerySummary {
  total: Int
  offset: Int
  limit: Int
}

type ArticlePayload {
  article: Article!
}

input SettingFilterFields {
  slug: String
  slug_not: String
  slug_in: [String]
  slug_not_in: [String]
  slug_starts_with: String
  slug_not_starts_with: String
  slug_ends_with: String
  slug_not_ends_with: String
  slug_contains: String
  slug_not_contains: String
}

"Rule type"
type Setting {
  slug: String!
  payload: Iterable
}

input RecyclabilityPieChartDMSFilterFields {
  supplier: String
  supplier_not: String
  supplier_in: [String]
  supplier_not_in: [String]
  supplier_starts_with: String
  supplier_not_starts_with: String
  supplier_ends_with: String
  supplier_not_ends_with: String
  supplier_contains: String
  supplier_not_contains: String
  category: Iterable
  validfrom_lte: Date
  validfrom_lte_not: Date
  validfrom_lte_in: [Date]
  validfrom_lte_not_in: [Date]
  validfrom_lte_lt: Date
  validfrom_lte_gt: Date
  validfrom_lte_lte: Date
  validfrom_lte_gte: Date
  validuntil_gte: Date
  validuntil_gte_not: Date
  validuntil_gte_in: [Date]
  validuntil_gte_not_in: [Date]
  validuntil_gte_lt: Date
  validuntil_gte_gt: Date
  validuntil_gte_lte: Date
  validuntil_gte_gte: Date
}

input TableRulesRuleTypeFilter {
  ruleTypeSlug: String
}

input TableRulesDMSWidgetFilter {
  statusFilterWidgetTypes: StatusFilterWidgetTypes
}

input StatusFilterWidgetTypes {
  articleVersionStatus: Int
  packagingUnitsStatus: Int
  ruleStatus: [Int]
}

type RecyclabilityPieChartDMS {
  classifications: [RecyclabilityPieChartDMSList]
}

type RecyclabilityPieChartDMSList {
  name: String
  count: Int
}

input RecyclingBarriersTableDMSFilterFields {
  supplier: String
  supplier_not: String
  supplier_in: [String]
  supplier_not_in: [String]
  supplier_starts_with: String
  supplier_not_starts_with: String
  supplier_ends_with: String
  supplier_not_ends_with: String
  supplier_contains: String
  supplier_not_contains: String
  category: Iterable
  validfrom: Date
  validfrom_not: Date
  validfrom_in: [Date]
  validfrom_not_in: [Date]
  validfrom_lt: Date
  validfrom_gt: Date
  validfrom_lte: Date
  validfrom_gte: Date
  validuntil: Date
  validuntil_not: Date
  validuntil_in: [Date]
  validuntil_not_in: [Date]
  validuntil_lt: Date
  validuntil_gt: Date
  validuntil_lte: Date
  validuntil_gte: Date
}

type RecyclingBarriersTableDMS {
  barriers: [RecyclingBarriersTableDMSList]
}

type RecyclingBarriersTableDMSList {
  text: String
  material: String
  count: Int
  percentage: String
}

input RecyclingRouteTableDMSFilterFields {
  supplier: String
  supplier_not: String
  supplier_in: [String]
  supplier_not_in: [String]
  supplier_starts_with: String
  supplier_not_starts_with: String
  supplier_ends_with: String
  supplier_not_ends_with: String
  supplier_contains: String
  supplier_not_contains: String
  category: Iterable
  validfrom: Date
  validfrom_not: Date
  validfrom_in: [Date]
  validfrom_not_in: [Date]
  validfrom_lt: Date
  validfrom_gt: Date
  validfrom_lte: Date
  validfrom_gte: Date
  validuntil: Date
  validuntil_not: Date
  validuntil_in: [Date]
  validuntil_not_in: [Date]
  validuntil_lt: Date
  validuntil_gt: Date
  validuntil_lte: Date
  validuntil_gte: Date
}

type RecyclingRouteTableDMS {
  routes: [RecyclingRouteTableDMSList]
}

type RecyclingRouteTableDMSList {
  name: String
  percentage: String
  count: Int
}

input SortingBarriersTableDMSFilterFields {
  supplier: String
  supplier_not: String
  supplier_in: [String]
  supplier_not_in: [String]
  supplier_starts_with: String
  supplier_not_starts_with: String
  supplier_ends_with: String
  supplier_not_ends_with: String
  supplier_contains: String
  supplier_not_contains: String
  category: Iterable
  validfrom: Date
  validfrom_not: Date
  validfrom_in: [Date]
  validfrom_not_in: [Date]
  validfrom_lt: Date
  validfrom_gt: Date
  validfrom_lte: Date
  validfrom_gte: Date
  validuntil: Date
  validuntil_not: Date
  validuntil_in: [Date]
  validuntil_not_in: [Date]
  validuntil_lt: Date
  validuntil_gt: Date
  validuntil_lte: Date
  validuntil_gte: Date
}

type SortingBarriersTableDMS {
  barriers: [SortingBarriersTableDMSList]
}

type SortingBarriersTableDMSList {
  text: String
  material: String
  count: Int
  percentage: String
}

input SubmissionBarChartDMSFilterFields {
  supplier: String
  supplier_not: String
  supplier_in: [String]
  supplier_not_in: [String]
  supplier_starts_with: String
  supplier_not_starts_with: String
  supplier_ends_with: String
  supplier_not_ends_with: String
  supplier_contains: String
  supplier_not_contains: String
  category: Iterable
  validfrom: Date
  validfrom_not: Date
  validfrom_in: [Date]
  validfrom_not_in: [Date]
  validfrom_lt: Date
  validfrom_gt: Date
  validfrom_lte: Date
  validfrom_gte: Date
  validuntil: Date
  validuntil_not: Date
  validuntil_in: [Date]
  validuntil_not_in: [Date]
  validuntil_lt: Date
  validuntil_gt: Date
  validuntil_lte: Date
  validuntil_gte: Date
}

type SubmissionBarChartDMSList {
  countLastModifiedMonth0unitl3: Int
  countLastModifiedMonth3unitl5: Int
  countLastModifiedMonth5unitl10: Int
  countLastModifiedMonthOver10: Int
}

input ProcessingBarChartDMSFilterFields {
  supplier: String
  supplier_not: String
  supplier_in: [String]
  supplier_not_in: [String]
  supplier_starts_with: String
  supplier_not_starts_with: String
  supplier_ends_with: String
  supplier_not_ends_with: String
  supplier_contains: String
  supplier_not_contains: String
  category: Iterable
  validfrom: Date
  validfrom_not: Date
  validfrom_in: [Date]
  validfrom_not_in: [Date]
  validfrom_lt: Date
  validfrom_gt: Date
  validfrom_lte: Date
  validfrom_gte: Date
  validuntil: Date
  validuntil_not: Date
  validuntil_in: [Date]
  validuntil_not_in: [Date]
  validuntil_lt: Date
  validuntil_gt: Date
  validuntil_lte: Date
  validuntil_gte: Date
}

type ProcessingBarChartDMS {
  processing: [ProcessingBarChartDMSList]
  total: Int
}

type ProcessingBarChartDMSList {
  status: Int
  count: Int
}

input MainComponentTableDMSFilterFields {
  supplier: String
  supplier_not: String
  supplier_in: [String]
  supplier_not_in: [String]
  supplier_starts_with: String
  supplier_not_starts_with: String
  supplier_ends_with: String
  supplier_not_ends_with: String
  supplier_contains: String
  supplier_not_contains: String
  category: Iterable
  validfrom_lte: Date
  validfrom_lte_not: Date
  validfrom_lte_in: [Date]
  validfrom_lte_not_in: [Date]
  validfrom_lte_lt: Date
  validfrom_lte_gt: Date
  validfrom_lte_lte: Date
  validfrom_lte_gte: Date
  validuntil_gte: Date
  validuntil_gte_not: Date
  validuntil_gte_in: [Date]
  validuntil_gte_not_in: [Date]
  validuntil_gte_lt: Date
  validuntil_gte_gt: Date
  validuntil_gte_lte: Date
  validuntil_gte_gte: Date
}

type MainComponentTableDMS {
  components: [MainComponentTableDMSList]
}

type MainComponentTableDMSList {
  name: String
  material: String
  classification: String
  count: Int
}

input FieldTestSubmittedPieChartDMSFilterFields {
  supplier: String
  supplier_not: String
  supplier_in: [String]
  supplier_not_in: [String]
  supplier_starts_with: String
  supplier_not_starts_with: String
  supplier_ends_with: String
  supplier_not_ends_with: String
  supplier_contains: String
  supplier_not_contains: String
  category: Iterable
  validfrom: Date
  validfrom_not: Date
  validfrom_in: [Date]
  validfrom_not_in: [Date]
  validfrom_lt: Date
  validfrom_gt: Date
  validfrom_lte: Date
  validfrom_gte: Date
  validuntil: Date
  validuntil_not: Date
  validuntil_in: [Date]
  validuntil_not_in: [Date]
  validuntil_lt: Date
  validuntil_gt: Date
  validuntil_lte: Date
  validuntil_gte: Date
}

type FieldTestSubmittedPieChartDMS {
  companies: [FieldTestSubmittedPieChartDMSList]
}

type FieldTestSubmittedPieChartDMSList {
  name: String
  count: Int
}

input FieldTestProgressHeroDMSFilterFields {
  supplier: String
  supplier_not: String
  supplier_in: [String]
  supplier_not_in: [String]
  supplier_starts_with: String
  supplier_not_starts_with: String
  supplier_ends_with: String
  supplier_not_ends_with: String
  supplier_contains: String
  supplier_not_contains: String
  category: Iterable
  validfrom: Date
  validfrom_not: Date
  validfrom_in: [Date]
  validfrom_not_in: [Date]
  validfrom_lt: Date
  validfrom_gt: Date
  validfrom_lte: Date
  validfrom_gte: Date
  validuntil: Date
  validuntil_not: Date
  validuntil_in: [Date]
  validuntil_not_in: [Date]
  validuntil_lt: Date
  validuntil_gt: Date
  validuntil_lte: Date
  validuntil_gte: Date
}

type FieldTestProgressHeroDMS {
  count: Int
}

input FieldTestNotSubmittedPieChartDMSFilterFields {
  supplier: String
  supplier_not: String
  supplier_in: [String]
  supplier_not_in: [String]
  supplier_starts_with: String
  supplier_not_starts_with: String
  supplier_ends_with: String
  supplier_not_ends_with: String
  supplier_contains: String
  supplier_not_contains: String
  category: Iterable
  validfrom: Date
  validfrom_not: Date
  validfrom_in: [Date]
  validfrom_not_in: [Date]
  validfrom_lt: Date
  validfrom_gt: Date
  validfrom_lte: Date
  validfrom_gte: Date
  validuntil: Date
  validuntil_not: Date
  validuntil_in: [Date]
  validuntil_not_in: [Date]
  validuntil_lt: Date
  validuntil_gt: Date
  validuntil_lte: Date
  validuntil_gte: Date
}

type FieldTestNotSubmittedPieChartDMS {
  companies: [FieldTestNotSubmittedPieChartDMSList]
}

type FieldTestNotSubmittedPieChartDMSList {
  name: String
  count: Int
}

input FieldTestAvailableHeroDMSFilterFields {
  supplier: String
  supplier_not: String
  supplier_in: [String]
  supplier_not_in: [String]
  supplier_starts_with: String
  supplier_not_starts_with: String
  supplier_ends_with: String
  supplier_not_ends_with: String
  supplier_contains: String
  supplier_not_contains: String
  category: Iterable
  validfrom: Date
  validfrom_not: Date
  validfrom_in: [Date]
  validfrom_not_in: [Date]
  validfrom_lt: Date
  validfrom_gt: Date
  validfrom_lte: Date
  validfrom_gte: Date
  validuntil: Date
  validuntil_not: Date
  validuntil_in: [Date]
  validuntil_not_in: [Date]
  validuntil_lt: Date
  validuntil_gt: Date
  validuntil_lte: Date
  validuntil_gte: Date
}

type FieldTestAvailableHeroDMS {
  count: Int
}

input ArticleNotSubmittedBarChartDMSFilterFields {
  supplier: String
  supplier_not: String
  supplier_in: [String]
  supplier_not_in: [String]
  supplier_starts_with: String
  supplier_not_starts_with: String
  supplier_ends_with: String
  supplier_not_ends_with: String
  supplier_contains: String
  supplier_not_contains: String
  category: Iterable
  validfrom: Date
  validfrom_not: Date
  validfrom_in: [Date]
  validfrom_not_in: [Date]
  validfrom_lt: Date
  validfrom_gt: Date
  validfrom_lte: Date
  validfrom_gte: Date
  validuntil: Date
  validuntil_not: Date
  validuntil_in: [Date]
  validuntil_not_in: [Date]
  validuntil_lt: Date
  validuntil_gt: Date
  validuntil_lte: Date
  validuntil_gte: Date
}

type ArticleNotSubmittedBarChartDMS {
  countLastModifiedMonth0unitl3: Int
  countLastModifiedMonth3unitl6: Int
  countLastModifiedMonthOver6: Int
}

input TablePackagingUnitsFilterFields {
  category: Iterable
}

input SortInputFields {
  field: String
  type: String
}

type TablePackagingUnits {
  records: [TablePackagingUnitsRow]
  summary: QuerySummary
}

type TablePackagingUnitsRow {
  rowNumber: Int
  packagingTypeMainComponent: String
  materialTypeMainComponentMaterial: String
  articleId: Int
  articleUuid: String
  packagingUnitStatus: Int
  articleName: String
  articleVersionArticleNumber: String
  articleCategory: Iterable
  articleVersionValidfrom: Date
  articleVersionValiduntil: Date
  articleVersionId: Int
  articleVersionUuid: String
  articleVersionVersion: Int
  supplierName: String
  supplierCustomId: String
}

input tableRulesDMSFilterFields {
  supplier: String
  supplier_not: String
  supplier_in: [String]
  supplier_not_in: [String]
  supplier_starts_with: String
  supplier_not_starts_with: String
  supplier_ends_with: String
  supplier_not_ends_with: String
  supplier_contains: String
  supplier_not_contains: String
  category: Iterable
  validfrom: Date
  validfrom_not: Date
  validfrom_in: [Date]
  validfrom_not_in: [Date]
  validfrom_lt: Date
  validfrom_gt: Date
  validfrom_lte: Date
  validfrom_gte: Date
  validuntil: Date
  validuntil_not: Date
  validuntil_in: [Date]
  validuntil_not_in: [Date]
  validuntil_lt: Date
  validuntil_gt: Date
  validuntil_lte: Date
  validuntil_gte: Date
  evaluation: Iterable
}

type tableRulesDMS {
  records: [tableRulesDMSRow]
  summary: QuerySummary
}

type tableRulesDMSRow {
  rowNumber: Int
  ruleId: Int
  ruleUuid: String
  ruleStatus: Int
  ruleEvaluationMainMaterial: String
  ruleEvaluationMainPackage: String
  ruleEvaluationClassification: String
  articleId: Int
  articleUuid: String
  articleStatus: Int
  articleName: String
  articleVersionArticleNumber: String
  articleCategory: Iterable
  articleVersionValidfrom: Date
  articleVersionValiduntil: Date
  articleVersionId: Int
  articleVersionUuid: String
  articleVersionVersion: Int
  supplierName: String
  supplierCustomId: String
}

input TableArticlesFilterFields {
  category: Iterable
  validat: Date
  validat_not: Date
  validat_in: [Date]
  validat_not_in: [Date]
  validat_lt: Date
  validat_gt: Date
  validat_lte: Date
  validat_gte: Date
}

type TableArticles {
  records: [TableArticlesRow]
  summary: QuerySummary
}

type TableArticlesRow {
  rowNumber: Int
  articleId: Int
  articleUuid: String
  articleStatus: Int
  articleName: String
  articleVersionArticleNumber: String
  articleCategory: Iterable
  articleVersionValidfrom: Date
  articleVersionValiduntil: Date
  articleVersionId: Int
  articleVersionUuid: String
  articleVersionVersion: Int
  supplierName: String
  supplierCustomId: String
}

type Mutation {
  createArticle(input: CreateArticleInput!): ArticlePayload!
  createArticleWithVersion(input: CreateArticleWithVersionInput!): ArticlePayload!
  updateArticle(input: UpdateArticleInput!): ArticlePayload!
  copyArticleWithVersion(input: CopyArticleWithVersionInput!): ArticlePayload!
  deleteArticle(input: GenericArticleIdInput!): ArticlePayload!
  exportArticle(identifier: String!, filter: ArticleFilterFields): ArticleExportPayload!
  importArticle(input: ImportArticleInput!): ArticleImportPayload!
  createArticleVersion(input: CreateArticleVersionInput!): ArticleVersionPayload!
  updateArticleVersion(input: UpdateArticleVersionInput!): ArticleVersionPayload!
  updateArticleVersionPeriodOfValidity(input: UpdateArticleVersionPeriodOfValidityInput!): ArticleVersionPayload!
  updateArticleVersionImage(input: UpdateArticleVersionImageInput!): ArticleVersionPayload!
  deleteArticleVersion(input: GenericArticleVersionIdInput!): ArticleVersionPayload!
  createArticleHistory(input: CreateArticleHistoryInput!): ArticleHistoryPayload!
  updateCompany(input: UpdateCompanyInput!): CompanyPayload!
  createPackagingUnit(input: CreatePackagingUnitInput!): PackagingUnitPayload!
  updatePackagingUnit(input: UpdatePackagingUnitInput!): PackagingUnitPayload!
  deletePackagingUnit(input: GenericPackagingUnitIdInput!): PackagingUnitPayload!
  createPackagingComponent(input: CreatePackagingComponentInput!): PackagingComponentPayload!
  updatePackagingComponent(input: UpdatePackagingComponentInput!): PackagingComponentPayload!
  createRule(input: CreateRuleInput!): RulePayload!
  updateRule(input: UpdateRuleInput!): RulePayload!
  deleteRule(input: GenericRuleIdInput!): RulePayload!
  createRuleAttachment(input: CreateRuleAttachmentInput!): RulePayload!
  removeRuleAttachment(input: RemoveRuleAttachmentInput!): RulePayload!
  submitRuleForAudit(input: GenericRuleIdInput!): RulePayload!
  completeAuditForRule(input: GenericRuleIdInput!): RulePayload!
  acceptRuleResult(input: GenericRuleIdInput!): RulePayload!
  generatePreviewCertificate(input: GenericRuleIdInput!): RulePayload!
  createRules(input: CreateRulesInput!): RuleListPayload!
  createRuleAndAnswerAllQuestions(input: CreateRulesInput!): RuleListPayload!
  createSetting(input: CreateSettingInput!): SettingPayload!
  updateSetting(input: UpdateSettingInput!): SettingPayload!
  deleteSetting(slug: String!): SettingPayload!
  createSupplier(input: CreateSupplierInput!): SupplierPayload!
  updateSupplier(input: UpdateSupplierInput!): SupplierPayload!
  deleteSupplier(input: GenericSupplierIdInput!): SupplierPayload!
  updateUserCompany(input: UpdateUserCompanyInput!): UserCompanyPayload!
}

input CreateArticleInput {
  name: String!
  amount: Float!
  status: Int
  category: Iterable
}

input CreateArticleWithVersionInput {
  articleName: String!
  articleAmount: Float!
  versionName: String!
  articleNumber: String!
  versionType: Int!
}

input UpdateArticleInput {
  id: ID!
  name: String
  measurementUnit: String
  amount: Float
  supplier: String
  supplierArticleNumber: String
  status: Int
  additional: Iterable
  category: Iterable
}

input CopyArticleWithVersionInput {
  articleId: ID!
  version: Int!
}

input GenericArticleIdInput {
  articleId: ID!
}

type ArticleExportPayload {
  success: Boolean!
}

input ImportArticleInput {
  identifier: String!
  async: Boolean
  importFile: Upload!
}

scalar Upload

type ArticleImportPayload {
  success: Boolean!
  file: Attachment
}

"Uploaded or generated file"
type Attachment {
  id: ID!
  fileName: String
  fileLink: String
}

input CreateArticleVersionInput {
  name: String!
  article: String!
  articleNumber: String!
  type: Int!
  cloneArticleVersion: Int
  gtin: String
  validfrom: Date
  validuntil: Date
  comment: String
  additional: Iterable
}

type ArticleVersionPayload {
  articleVersion: ArticleVersion!
}

input UpdateArticleVersionInput {
  id: ID!
  name: String
  type: Int
  status: Int
  gtin: String
  validfrom: Date
  validuntil: Date
  comment: String
  articleNumber: String
  additional: Iterable
}

input UpdateArticleVersionPeriodOfValidityInput {
  id: ID!
  validfrom: Date
  validuntil: Date
}

input UpdateArticleVersionImageInput {
  id: ID!
  image: Upload!
}

input GenericArticleVersionIdInput {
  articleVersionId: ID!
}

input CreateArticleHistoryInput {
  article: String!
  event: String!
}

type ArticleHistoryPayload {
  articleHistory: ArticleHistory!
}

input UpdateCompanyInput {
  id: ID!
  name: String
  additional: Iterable
}

input CreatePackagingUnitInput {
  articleVersion: String!
  packagingType: String!
  status: Int!
  result: Iterable
  additional: Iterable
  packagingComponents: [PackagingComponentInput]
}

input PackagingComponentInput {
  id: String
  packagingType: String
  materialType: String
  status: Int
  layers: [LayerInput]
  result: Iterable
  additional: Iterable
}

"Packaging component layer input"
input LayerInput {
  id: String
  areaScm: Float
  arealWeightGscm: Float
  thicknessMicrom: Float
  fillersPercentage: Float
  fillersDensity: Float
  sortOrder: Int
  materialTypeId: String!
  coatingTypeId: String!
}

type PackagingUnitPayload {
  packagingUnit: PackagingUnit!
}

input UpdatePackagingUnitInput {
  id: ID!
  status: Int
  result: Iterable
  additional: Iterable
  evaluation: Iterable
  packagingComponents: [PackagingComponentInput]
}

input GenericPackagingUnitIdInput {
  packagingUnitId: ID!
}

input CreatePackagingComponentInput {
  packagingUnit: String!
  packagingType: String!
  materialType: String!
  status: Int!
  layers: [LayerInput]
  result: Iterable
  additional: Iterable
}

type PackagingComponentPayload {
  packagingComponent: PackagingComponent!
}

input UpdatePackagingComponentInput {
  id: ID!
  status: Int
  layers: [LayerInput]
  result: Iterable
  additional: Iterable
}

input CreateRuleInput {
  packagingUnit: String!
  ruleType: String!
  status: Int
}

type RulePayload {
  rule: Rule!
}

input UpdateRuleInput {
  id: String!
  result: Iterable
  evaluation: Iterable
  status: Int
}

input GenericRuleIdInput {
  ruleId: ID!
}

input CreateRuleAttachmentInput {
  ruleId: ID!
  file: Upload!
}

input RemoveRuleAttachmentInput {
  attachmentId: ID!
}

input CreateRulesInput {
  articleVersion: String!
  ruleType: String!
  status: Int
}

"Query returning a list of rules"
type RuleListPayload {
  rules: [Rule]
}

input CreateSettingInput {
  slug: String!
  payload: Iterable
}

type SettingPayload {
  setting: Setting!
}

input UpdateSettingInput {
  slug: String!
  payload: Iterable
}

input CreateSupplierInput {
  name: String
  supplierCustomId: String
}

type SupplierPayload {
  supplier: Supplier!
}

input UpdateSupplierInput {
  id: ID!
  name: String
  supplierCustomId: String
}

input GenericSupplierIdInput {
  supplierId: ID
}

input UpdateUserCompanyInput {
  id: ID!
  company: ID!
}

type UserCompanyPayload {
  user: User!
}