Eclipse BaSyx DPP API
Entry from our research · information as of 2026-10-18
- Operator
- Fraunhofer IESE · DE
- Web page
- https://dpp.basyx.org/
- Source code
- https://github.com/eclipse-basyx/basyx-go-components
- Licence
- MIT (SPDX: MIT)
- Checks
- 10 of 10 passed · 2 warnings · full, weekly, on our own test instance (version 1.1.2)
- Test instance
- Current release of the Docker images of the project: the DPP API with a PostgreSQL database, configured as in the DPP API example of the project, without access control. The test passport is the sample passport of that release, created with POST /v1/dpps. Setup
- Listed since
- 2026-10-18
- Entry
- services/eclipse-basyx-dpp-api.yaml
Software to run on one's own servers, distributed as Docker images; there is no public instance. We check it once a week on a short-lived test instance of our own. The sample passport is not published under a product identifier, so it is not checked with dpplint.
This list is part of a research project and shares what we currently know. It makes no claim to be complete and is not a legal assessment. Entries from our research come from public information and may be incomplete or out of date. The operator can correct or take over this entry, or ask for its removal: how to add or correct a service.
Example passports · dpplint
No public example passport.
Service checks · dpp-validator
Run 2026-10-18T21:03:51Z · dpp-criteria 08ee851 · JSON
| Criterion | Requirement and findings | Level | Result |
|---|---|---|---|
| DPP-API-015 v1 | Lifecycle API provides ReadDPPIdsByProductIds
|
MUST | warning |
| DPP-API-022 v1 | Unknown passport ID is answered with 404
|
MUST | warning |
| DPP-API-007 v2 | Errors use the EN 18222 status codes | MUST | passed |
| DPP-API-013 v1 | Lifecycle API provides ReadDPPById | MUST | passed |
| DPP-API-014 v1 | Lifecycle API provides ReadDPPByProductId | MUST | passed |
| DPP-API-019 v1 | Lifecycle API provides ReadDPPVersionByIdAndDate | SHOULD | passed |
| DPP-API-020 v1 | API paths carry the version prefix v1/ | MUST | passed |
| DPP-API-021 v2 | elementIdPath uses RFC 9535 JSONPath | MUST | passed |
| DPP-API-023 v1 | API honours the representation query flag | MUST | passed |
| DPP-DEX-004 v1 | API responses are JSON | MUST | passed |
| DPP-DEX-002 v1 | HTTPS with a valid certificate
|
MUST | skipped not applicable |
| DPP-DEX-003 v1 | TLS 1.2 or higher, older versions refused
|
MUST | skipped not applicable |
| DPP-DEX-005 v1 | HTTP/2 is supported
|
MUST | skipped not applicable |
| DPP-DEX-006 v1 | HTTP versions below HTTP/2 are not used
|
MUST | skipped not applicable |
| DPP-SEC-001 v3 | Passport cannot be changed without authorisation
|
MUST | skipped not applicable |
| DPP-ACC-003 v1 | Controlled data elements are delivered per role (proposed, not counted)
|
MUST | skipped not applicable |
| DPP-ACC-006 v1 | Controlled data elements are not delivered without authorisation (proposed, not counted)
|
MUST | skipped not applicable |
| DPP-ACC-008 v1 | Access policy defines element-level rights, granting and revocation (proposed, not counted)
|
MUST | skipped not applicable |
| DPP-ACC-012 v1 | Fine-granular read of a controlled element without credentials is refused (proposed, not counted)
|
MUST | skipped not applicable |
| DPP-ACC-014 v1 | Access to controlled data is logged tamper-evidently (proposed, not counted)
|
MUST | skipped not applicable |
| DPP-API-016 v1 | Lifecycle API provides UpdateDPPById (proposed, not counted)
|
MUST | skipped needs credentials |
| DPP-BAT-004 v2 | Battery passport releases Annex XIII point 3 data only to authorities (proposed, not counted)
|
MUST | skipped not applicable |
| DPP-OPS-006 v1 | Separate test and production environments (proposed, not counted)
|
SHOULD | skipped not evaluated |
| DPP-STO-017 v1 | Archived versions keep the access restrictions (proposed, not counted)
|
MUST | skipped not applicable |
Results of automated checks only. They are no certification and establish no presumption of conformity.