Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

dpdpkit-spec

The single REST contract for dpdpkit. The FastAPI adapter, the Django adapter, dpdpkit-server and dpdpkit Cloud all expose exactly this API. The conformance suite here decides whether an adapter can be released.

Disclaimer. dpdpkit is software that helps you implement obligations under India's Digital Personal Data Protection Act, 2023 and the DPDP Rules, 2025. It does not provide legal advice and does not guarantee compliance.

  • openapi.yaml: OpenAPI 3.1, the source of truth. @dpdpkit/client generates its types from it.
  • dpdpkit-conformance: black-box pytest suite (src/dpdpkit_conformance/suite).

Running the conformance suite

pip install "dpdpkit-conformance[asgi] @ git+https://github.com/dpdpkit-dev/dpdpkit-spec@main"

# against a running server
DPDPKIT_BASE_URL=http://localhost:8000/dpdp dpdpkit-conformance

# in-process against an ASGI app (FastAPI, dpdpkit-server)
DPDPKIT_ASGI_APP=app:app DPDPKIT_PREFIX=/dpdp dpdpkit-conformance

What the app under test must do

  1. Publish a notice with at least one consent-based purpose.
  2. Conformance mode: resolve the principal from the X-DPDP-Test-Principal header and the admin role (viewer, handler, admin) from X-DPDP-Test-Role. Enable this only in test configuration.
  3. Register at least one erasure handler (the suite does not trigger erasure, but a production-like setup should).

Any adapter that fails the suite is not released (release-train rule).

Changing the contract

  • Additive changes (new optional field, new endpoint) are minor releases.
  • Removing or renaming anything is a breaking change: bump the major version and deprecate first.
  • Every change updates the conformance suite in the same pull request.

Licence

Apache-2.0.

Metadata

Release files for dpdpkit-conformance 0.1.0a1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dpdpkit-conformance 0.1.0a1
File Size Uploaded
dpdpkit_conformance-0.1.0a1.tar.gz 17.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dpdpkit-conformance 0.1.0a1
File Interpreter ABI Platform
dpdpkit_conformance-0.1.0a1-py3-none-any.whl Python 3 none any Details

Total release size: 33.5 kB

Release files / dpdpkit_conformance-0.1.0a1.tar.gz

Download URL dpdpkit_conformance-0.1.0a1.tar.gz
Size 17.2 kB
Tags Source
SHA-256 checksum
How to use checksums
ec5f0d5578eb949d0869862fa109913d2ca71d553a7645adb2854dee15a851a1
BLAKE2b-256 checksum
How to use checksums
d885b30c6238a36fb5c0e2dbc46bc262e606e6eed10d63600ab7844c44699aed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.

Transparency log

Release files / dpdpkit_conformance-0.1.0a1-py3-none-any.whl

Download URL dpdpkit_conformance-0.1.0a1-py3-none-any.whl
Size 16.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fb4a41589cfd7515999263195b19c416edd01a75fe084cfe3d5f37b508435894
BLAKE2b-256 checksum
How to use checksums
62030c57d97d9079a0b677f2e93d0a42455c3780426b945c85e0386406061e91
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.0a1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page