Overview
All endpoints are under https://eudigitalpassportprocessor.com/api/v1. Authentication: Authorization: Bearer dpp_live_... on every request.
All responses use a consistent envelope:
Response envelope
{ "data": { ... } } # single resource{ "data": [...], "pagination": { ... } } # list{ "error": "message" } # error
Organisation
GET /api/v1/org
Returns your organisation summary including quota usage.
Passports
GET /api/v1/passports
Returns a paginated list of passports. Query parameters: page, per_page (max 100), status (draft/complete/active/revoked), category (BATTERY_EV/BATTERY_INDUSTRIAL).
GET /api/v1/passports/:id
Returns a full passport including Annex XIII data, supply chain actors, and document metadata.
POST /api/v1/passports
Creates a new passport. Required fields: passport_number, product_name, category_code (BATTERY_EV or BATTERY_INDUSTRIAL). Optional: passport_level (model/batch/item), data (Annex XIII fields).
PATCH /api/v1/passports/:id
Updates data (Annex XIII fields), product_name, or passport_level. The data object is merged — only send the fields you want to change.
POST /api/v1/passports/:id/activate
Activates a passport. Returns the updated passport with status: "active" and public_url.
GET /api/v1/passports/:id/registry-status
Returns EU registry submission state including status, submission ID, and any error details.
Error codes
Need more help?
Contact support →On this page
Share
Ready to get started?
Demo accounts open from June 2026 — register your interest at eudigitalpassportprocessor.com/demo/request
Register interestRelated articles
Start building your Digital Product Passports
EU Battery Regulation compliance — 18 February 2027 deadline.