Skip to main content

calculateImpact

Calculate the environmental impact for a product with specific parameters.
mutation {
  calculateImpact(input: {
    productId: "prod_abc123"
    quantity: 100
    transportMethod: TRUCK
    distance: 500
    distanceUnit: KM
    originCountry: "NL"
    destinationCountry: "DE"
    locale: "en"
  }) {
    co2Equivalent
    mkiScore
    waterFootprint
    energyUse
    transportContribution
    breakdown {
      phase
      contribution
      percentage
    }
    equivalency {
      description
      value
      icon
    }
  }
}
Input:
FieldTypeRequiredDescription
productIdID!YesProduct identifier
quantityInt!YesNumber of units
transportMethodTransportMethodNoTransport type
distanceFloatNoTransport distance
distanceUnitDistanceUnitNoKM or MILES
originCountryStringNoISO country code
destinationCountryStringNoISO country code
localeStringNoLocale for equivalencies (default: “en”)

calculateMki

Calculate the MKI (Milieukostenindicator) score with lifecycle phases.
mutation {
  calculateMki(input: {
    productId: "prod_abc123"
    quantity: 1
    functionalUnit: "m2"
    lifespan: 75
    maintenanceScenario: STANDARD
  }) {
    mkiScore
    unit
    perFunctionalUnit
    breakdown {
      phase
      value
      percentage
    }
    phases {
      A1_A3 { value description }
      A4 { value description }
      A5 { value description }
      B1_B7 { value description }
      C1_C4 { value description }
      D { value description }
    }
  }
}
Input:
FieldTypeRequiredDescription
productIdID!YesProduct identifier
quantityFloatNoQuantity (default: 1)
functionalUnitStringNoFunctional unit (e.g., “m2”, “kg”, “piece”)
lifespanIntNoProduct lifespan in years
maintenanceScenarioMaintenanceScenarioNoNONE, STANDARD, INTENSIVE

calculateCartImpact

Calculate the total impact of a shopping cart.
mutation {
  calculateCartImpact(input: {
    sessionId: "session_abc"
    items: [
      { productId: "prod_abc123", quantity: 2 },
      { productId: "prod_def456", quantity: 1 }
    ]
    shippingMethod: STANDARD
    shippingAddress: { country: "NL", postalCode: "1012AB" }
  }) {
    totalCo2Equivalent
    totalMkiScore
    shippingImpact
    perItemBreakdown {
      productName
      quantity
      co2Equivalent
      percentage
    }
    equivalency {
      description
      value
    }
  }
}
See the ShoppingCart type for full details.

recalculateProductImpact

Force a recalculation of a product’s impact score (e.g., after EPD update).
mutation {
  recalculateProductImpact(productId: "prod_abc123") {
    co2Equivalent
    mkiScore
    previousScore {
      co2Equivalent
      mkiScore
    }
    delta {
      co2Equivalent
      percentageChange
    }
    calculatedAt
  }
}