API Documentation
Integrate DPP-Tool into your existing systems.
API access requires a Pro plan or higher.
See PlansAuthentication
Include your API key in the Authorization header:
Authorization: Bearer YOUR_API_KEY
Endpoints
GET /api/products
List all your products with pagination.
Response
{
"products": [
{
"id": "abc123",
"name": "EcoCharge Pro 5000",
"sector": "batteries",
"gtin": "4006381333931",
"created_at": "2026-01-15T10:30:00Z"
}
],
"total": 1,
"page": 1
}
POST /api/products
Create a new product and auto-generate its passport.
Request Body
{
"name": "EcoCharge Pro 5000",
"sector": "batteries",
"manufacturer_name": "GreenTech GmbH",
"gtin": "4006381333931",
"carbon_footprint": 12.5,
"recycled_content": 65,
"energy_class": "A+"
}
GET /api/passport?slug={slug}&format=json
Get passport data in JSON format (public, no auth required).
GET /api/qrcode?slug={slug}&size=300
Generate a QR code for a passport (public, no auth required).
Returns a PNG image.
GET /api/export?slug={slug}&format={json|csv}
Export passport data in various formats.
Rate Limits
| Plan | Requests / Hour |
|---|---|
| Free | 10 |
| Pro / Business | 100 |
Error Codes
| Code | Meaning |
|---|---|
| 400 | Bad Request |
| 401 | Unauthorized — invalid or missing API key |
| 403 | Forbidden — plan does not include API access |
| 404 | Not Found |
| 429 | Rate Limit Exceeded |
| 500 | Internal Server Error |