Developers · Reference

Changelog

Every change to the Battery Passport API, newest first, starting with v1.0.0 on 4 October 2026.

Version
v1.0.0
Base URL
https://dppapi-production.up.railway.app/v1
Format
JSON · OpenAPI 3.1
FeedbackLast updated

Cet article n'est pas encore disponible en français ; il est affiché ci-dessous en anglais.

Within v1 every change is additive; anything breaking would ship as v2 with advance notice. Subscribe to the specification URL in your CI to see additions as they land.

Follow changes

Atom feed

Every release of this changelog, for a feed reader, Slack or Teams.

Watch the spec in CI

The OpenAPI 3.1 document is public. Hash it in CI and the build tells you the day an endpoint or field is added.

dppapi-production.up.railway.app/v1/openapi.json

API status

GET /health/ready answers 200 with "status": "ready" when passports can be served, and 503 when the database is unreachable. Point an uptime check at it.

v1.0.0

  • addedThe public REST API under /v1, authenticated with organisation API keys carrying read and write scopes.
  • addedLive (dpp_live_…) and test (dpp_test_…) keys; test keys dry-run every write. X-DPP-Dry-Run for single dry runs with a live key; X-DPP-Mode on every response.
  • addedIdempotency keys on POST and PATCH, stored for 24 hours, with Idempotent-Replayed on replays.
  • addedX-Request-Id on every response and request_id in every /v1 error body.
  • addedCursor pagination (limit, cursor, has_more, next_cursor) on list endpoints.
  • addedModels: list, create, read, update, validate and missing-field analysis. Documents: upload, list, download.
  • addedBatteries: create one or up to 1,000, each with its own passport and unique identifier.
  • addedPassports: list with incremental-sync filters, read, publish (single and bulk) behind the publish gate, status changes with linked successor passports, recycling, QR codes and the version archive.
  • addedDynamic data events, including the telemetry fields capacityThroughput, timeExtremeHighTemp, timeExtremeLowTemp, timeChargingExtremeHighTemp and timeChargingExtremeLowTemp.
  • addedFleet operations: bulk lifecycle events and matched row updates, with per-row results.
  • addedSigned webhooks for passports, models, documents and supplier submissions, with retries, a delivery log, resend, secret rotation and a ping test event — managed in the app or under /webhooks.
  • addedFacilities: GET /plants and POST /plants.
  • addedSupplier requests: GET /upload-links, POST /upload-links, GET /upload-links/{id}/files and POST /upload-links/{id}/accept.
  • addedX-DPP-Api-Version on every /v1 response.
  • addedAudit trail, JSON export and ZIP archive over the API.
  • addedGET /field-catalog: the 71 EU data points with obligation per category, field mapping and access tier.
  • addedRate limits: 600 requests per minute per live key, 60 per test key.

Préférences en matière de cookies

Vous choisissez les cookies utilisés. Vous pouvez modifier votre choix à tout moment via « Paramètres des cookies » en bas de page. Politique de confidentialité

Nécessaires

Toujours actifs

Indispensables au fonctionnement du site : votre thème clair/sombre et ce choix de cookies sont enregistrés dans votre navigateur. Ils ne servent pas à vous suivre.

Analyse

Google Analytics 4 mesure l’utilisation des pages au moyen de statistiques, ce qui nous aide à améliorer le site. Si vous acceptez, il dépose des cookies et mesure votre visite en détail. Si vous refusez, il ne dépose aucun cookie, mais Google peut tout de même recevoir des données techniques, comme la page consultée, le type de navigateur et l’adresse IP.

_ga, _ga_* · jusqu’à 2 ans · Google