Skip to main content

Python SDK for interacting with Digital Product Passport (DPP) System Infrastructure

Project description

dpp-sdk (Python)

Python SDK for Digital Product Passports (DPP), built on Pydantic v2.

It provides typed models, validation, and JSON transport for digital product passports, plus HTTP clients for the two DPP backend APIs:

  • the DPP registry — hosted by the European Commission, and
  • the DPP repository — hosted by economic operators or service providers.

Both APIs conform to the draft standardisation documents published by CEN/CENELEC.

Install

pip install dpp-sdk

Requires Python 3.11+.

Quickstart

from dpp_sdk import Dpp4Fun, from_json, to_json, validate_dpp4fun

# Parse an incoming passport (accepts both flat and nested JSON shapes)
dpp = from_json(raw_json)

# Validate against the DPP rule set (raises on violations)
validate_dpp4fun(dpp)

# Serialize back to the flattened wire JSON
payload = to_json(dpp)

The httpx-based clients for the registry and repository APIs live in dpp_sdk.clients:

from dpp_sdk.clients import DppRepoClient, DppRegistryClient

Packages

Package Purpose
dpp_sdk.core Core DPP model, validation, and JSON transport
dpp_sdk.dpp4fun Furniture-specific DPP aggregate
dpp_sdk.clients HTTP clients for the DPP registry & repository APIs

Development

python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"

pytest        # tests
mypy          # type check (strict)
ruff check .  # lint

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dpp_sdk-0.1.1.tar.gz (23.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dpp_sdk-0.1.1-py3-none-any.whl (24.0 kB view details)

Uploaded Python 3

File details

Details for the file dpp_sdk-0.1.1.tar.gz.

File metadata

  • Download URL: dpp_sdk-0.1.1.tar.gz
  • Upload date:
  • Size: 23.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for dpp_sdk-0.1.1.tar.gz
Algorithm Hash digest
SHA256 37490a2f1b5e73b9c7e3ec47caf1c6b5bfb3c8a162cec1b2ec2cf0b70fb18e5a
MD5 b71cff6b500c87991b42047ab168e2eb
BLAKE2b-256 121ceaf5ea6a9de2b71fd605aa30ff4113d7f6d1a0efd292cbc510004145dc6b

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_sdk-0.1.1.tar.gz:

Publisher: release.yml on CIR4FUN-EU/dpp-sdk-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dpp_sdk-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: dpp_sdk-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 24.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for dpp_sdk-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8199306a9174f6bac7d54bcf39a1759f941a99decaeba598624e2f2f816b4bb9
MD5 9c4834a59b16cc9c78c35421c5c4c531
BLAKE2b-256 2bdf070202849d524d4c7f06bb21ec8b96abee92610815da4d634c574c2499ba

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_sdk-0.1.1-py3-none-any.whl:

Publisher: release.yml on CIR4FUN-EU/dpp-sdk-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page