Getting started

DPPAutomate Documentation

DPPAutomate is an agentic-first platform for EU Digital Product Passports. It exposes a clean REST API and an OpenAPI 3.1 spec so a human can use it - and an AI agent can drive it. Generate passports from product photos, review and approve them, and resolve them publicly for regulators, all over HTTP.

What is DPPAutomate?

Under ESPR, products placed on the EU market need a Digital Product Passport - a structured, machine-readable record carrying identification, economic operator, materials, chemical compliance, environmental impact, sustainability, care, end-of-life, and compliance data. DPPAutomate models that as a 12-section Passport object. The fastest way to create one is to point the AI at a product image: it drafts the whole passport, and you review or auto-publish it.

The two layers

The surface has two layers, built for two different audiences.

Layer 1 - public regulatory

GET /api/public/v1/passports/{dppUid}. No auth. Returns the published passport as redacted JSON-LD - the machine-readable twin of the QR page. Edge-cached, open CORS.

Learn more

Layer 2 - management API

Base /api/v1, authenticated with a per-workspace master key (Bearer ep_live_sk_...). Full CRUD, AI generation, drafts, learnings, workspace mode, export.

Learn more

Layer 1 takes no authentication - it is what crawlers, consumer apps, and notified bodies resolve from the QR code:

cURL
# No auth - the machine-readable twin of the /dpp/{dppUid} page.
curl https://dppautomate.com/api/public/v1/passports/DPP-1717-AB12CD

The agentic model

DPPAutomate is designed to be run by an AI. Create a master API key in the dashboard ( Settings > API Keys), then hand it to Claude Code, Codex, or any LLM agent - and it can run your entire DPP workspace: generate passports from photos, review and approve drafts, manage the learnings that steer future output, switch Review/Auto mode, and export.

TerminalShell
# Create a master key in the dashboard: Settings > API Keys.
# Then export it for the rest of your shell session.
export DPP_API_KEY="ep_live_sk_..."

A key carries permissions - read, write, delete (an admin key grants all). Generating a passport is a single call:

cURL
curl https://dppautomate.com/api/v1/passports/generate \
  -X POST \
  -H "Authorization: Bearer $DPP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "image": "data:image/png;base64,<...>" }'

Review vs Auto mode

Every workspace has an AI mode that decides what happens to AI-generated and imported passports:

Review mode

New AI/imported passports become DRAFTS in a review queue. A human (or the agent, once trusted) approves or rejects them before they go live. Approvals capture learnings.

Learn more

Auto mode

New passports are ACTIVE immediately. Best once the model is dialled in for your catalogue and you trust the agent end to end.

Learn more

Set the mode over the API with PUT /api/v1/workspace/mode and a body of { "mode": "review" | "auto" }.

Learnings

Learnings are natural-language instructions that steer future generations - for example, "always read the country of origin from the sewn-in label". They are captured automatically from the human corrections made when a draft is approved, and you can also add them manually via POST /api/v1/learnings. Active learnings are injected into the generation prompt, so the system gets more accurate for your catalogue over time.

Reference

When you're ready to go deeper, the reference covers every endpoint, permission, schema and error code. The OpenAPI spec and /llms.txt are the canonical, machine-readable sources of truth - point your agent at them.

Quickstart

From a master key to a generated passport in five steps - all copy-paste cURL.

API Reference

Both layers, authentication, permissions, the rate-limit table, and the error model.

OpenAPI 3.1 spec

The full machine-readable contract at /api/openapi.json. Fetch it once and an agent knows the whole API.

Learn more

Direct links: /api/openapi.json and /llms.txt.