/api/v1/passports/{id}/place-on-marketBatteriepass an die API eines Registers nach EN 18222 senden
Sendet einen veröffentlichten Batteriepass an ein Register, das den Aufruf registerDPP nach EN 18222 annimmt, mit dem für Ihr Konto eingerichteten Zugang zur Register-API (ein API-Schlüssel oder ein Bearer-Token), der Eintrag erfolgt also mit Ihren eigenen Zugangsdaten. Nur Batteriepässe.
Dies ist nicht der Weg ins EU DPP Registry. Das Registry der Kommission nimmt weder diesen Aufruf noch diese Zugangsdaten an: Der Wirtschaftsakteur registriert dort auf der Website des Registry mit seinem eigenen EU Login. Für diesen Weg holen Sie die Adresse für das Formular des Registry (POST /api/v1/passports/{id}/registry-upi) oder eine Upload-Datei (POST /api/v1/registry/upload-file) und erfassen dann die Antwort des Registry (POST /api/v1/passports/{id}/registration).
Nur in Bezahlplänen (402 auf Free): Ein Free-Pass läuft nach 30 Tagen ab, und ein registrierter Pass, der nicht mehr auflöst, macht die Registrierung unbrauchbar.
Asynchron. Der Aufruf prüft den Pass, setzt placeOnMarketStatus auf placing und antwortet sofort mit 202 und { passport, passportId, status: "placing", dppId }. Der Aufruf beim Register folgt im Hintergrund, mit automatischen Wiederholungen, solange das Register nicht erreichbar ist. Lesen Sie den Pass, um den Ausgang zu verfolgen: placed heißt, das Register hat ihn angenommen (placedOnMarketAt, dazu registrationId, wenn das Register eine zurückgegeben hat), und löst den Webhook passport.placed_on_market aus; rejected heißt, das Register hat ihn abgelehnt oder war nach Ausschöpfen der Wiederholungen nicht erreichbar (registrationRejectedAt, registrationRejectionReason), und löst passport.placement_rejected aus. Für einen neuen Versuch beheben Sie die Ursache und rufen diesen Endpoint erneut auf — ein abgelehnter Pass kann erneut gesendet werden, und der neue Versuch löscht die alte Ablehnung. Hat der Pass noch keine DPP-ID, erhält er eine; sie wird als dppId zurückgegeben.
Ablehnungen antworten mit 409 und einem Code, geprüft in dieser Reihenfolge: not_a_battery, not_published (nur ein veröffentlichter Pass kann gesendet werden), already_placed (läuft bereits oder erledigt), operator_id_missing (das Konto hat keine Kennung des Wirtschaftsakteurs; legen Sie sie in den Unternehmenseinstellungen fest), registry_not_configured (für das Konto ist kein Zugang zu einer Register-API eingerichtet; ein Admin richtet ihn im Dashboard unter Settings → EN 18222 registry API ein), registry_host_not_allowed (TracePass sendet keine Registrierungen an die für das Konto eingerichtete Registeradresse; prüfen Sie die Register-URL unter Settings → EN 18222 registry API) und registry_not_ready, dessen findings[] die Befunde der Registry-Bereitschaftsprüfung auflistet, die im Weg stehen (findingDetails[] enthält dieselben Befunde mit ihrer Schwere, blockierende zuerst) — die Registry-Bereitschaftsprüfung liefert sie in strukturierter Form.
Nach dem Inverkehrbringen ist der Wirtschaftsakteur gesperrt: Ein Schreibvorgang auf eine Partei, der einen gespeicherten operatorIdentifier oder facilityIdentifier ändern würde, antwortet mit 409 operator_locked. Zur Korrektur markieren Sie den Pass zur Löschung und legen einen neuen an. Kein Request-Body. Zählt als ein v1-Schreibvorgang, und nur, wenn der Aufruf angenommen wird. Unterstützt Idempotency-Key.
Pfad-Parameter
- iderforderlich
string (24 hex chars)
Pass-ID eines veröffentlichten Batteriepasses.
Header
- Authorizationerforderlich
string
Bearer <token>— entweder eintp_API-Schlüssel (Developer → API Keys; am einfachsten, für Server-zu-Server) oder ein OAuth-2.0-Access-Token (Developer → OAuth Apps; für nutzerautorisierte Apps, scoped und widerrufbar). Die Authentication-Seite enthält den vollständigen OAuth-Flow und die Scope-Liste.e.g. Bearer tp_REDACTED_xxxxxxxxxxxx
- Idempotency-Key
string
UUID v4.
Anfrage
curl -sS -X POST \
https://app.tracepass.eu/api/v1/passports/6650b2c3d4e5f6a7b8c9d0e1/place-on-market \
-H "Authorization: Bearer tp_REDACTED_xxxxxxxxxxxx" \
-H "Idempotency-Key: 3f1c9a52-8b7e-4d6a-9f0e-2c4b6d8e0a13"Antwort
{
"passport": {
"_id": "6650b2c3d4e5f6a7b8c9d0e1",
"status": "published",
"placeOnMarketStatus": "placing"
},
"passportId": "6650b2c3d4e5f6a7b8c9d0e1",
"status": "placing",
"dppId": "https://id.tracepass.eu/dpp/7b1e4c2a-5f3d-4e8a-9c6b-2d1f0a3e5b7c"
}