Skip to main content

DigitalProductPassport type

type DigitalProductPassport {
  id: ID!
  productId: ID!
  product: Product!
  publicUrl: String!
  qrCodeUrl: String
  status: DppStatus!
  locale: String!
  sections: [DppSection!]!
  auditTrail: [AuditEntry!]!
  createdAt: DateTime!
  updatedAt: DateTime!
  expiresAt: DateTime
}

type DppSection {
  name: String!
  fields: [DppField!]!
}

type DppField {
  key: String!
  value: String!
  unit: String
}

enum DppStatus {
  DRAFT
  ACTIVE
  EXPIRED
  REVOKED
}

Fields

FieldTypeDescription
idID!Unique DPP identifier
productIdID!Associated product
publicUrlString!Public URL for the passport
qrCodeUrlStringURL to the QR code image (SVG)
statusDppStatus!Current status
localeString!Language/locale of the passport
sections[DppSection!]!Structured data sections
auditTrail[AuditEntry!]!Immutable change log

Example query

query {
  dpp(id: "dpp_xyz789") {
    id
    publicUrl
    qrCodeUrl
    status
    product { id name }
    sections {
      name
      fields { key value unit }
    }
    auditTrail {
      timestamp
      action
      actor
    }
  }
}
For generating DPPs, see the DPP Guide.