Zustandsdaten und Lebenszyklus-Ereignisse
Wie gemessene Zustandsdaten ohne Prüfschritt in einen Pass gelangen, wie die Neuveröffentlichung geregelt ist und was Lebenszyklus-Ereignisse festhalten.
Der Pass einer Batterie endet nicht am Werkstor. Zwei Arten von Informationen begleiten sie durch ihr Leben:
Zustandsdaten, also der gemessene Gesundheitszustand und die Nutzung einer Einheit, und
Lebenszyklus-Ereignisse, die festhalten, was mit ihr geschehen ist. Beides lässt sich über die API mit einem
Schlüssel melden, der den Scope condition hat.
Zustandsdaten
Zustandsdaten sind die dynamischen Felder des Registers (der Abschnitt condition, Anhang XIII Nummer 4):
Messwerte einer Einheit wie condition.capacity_fade, condition.remaining_capacity,
condition.number_of_full_cycles oder, bei Elektrofahrzeugbatterien, condition.state_of_certified_energy.
Welche Felder gelten, hängt von der Batteriekategorie ab; getCondition
nennt sie in field_keys, mit ihren aktuellen Werten und measured_at.
Im aktuellen Register gehören alle Zustandsfelder zur Stufe legitimate_interest; im öffentlichen JSON
erscheinen sie daher nie (Zugriffsstufen).
Messwerte statt deklarierter Angaben
Was ein Batteriemanagementsystem gemessen hat, kann ein Prüfer nicht besser beurteilen als das Gerät selbst. Eine Zustandsmeldung wird deshalb als Messung angenommen, ohne den Prüfschritt, den deklarierte Daten brauchen:
- Jeder Wert wird direkt als
approvedgespeichert, mit seinemmeasured_at, seinersource(apifür einen Schlüssel,supplierfür den Bericht eines Servicepartners,manualfür ein Mitglied). Ein Mitglied steht inrecorded_by, ein Schlüssel imapi_keydes Lebenszyklus-Ereignisses der Meldung (Werte nennen keinen Schlüssel). reviewed_atist der Zeitpunkt der Annahme; einen Prüfer gibt es nicht, das Vier-Augen-Prinzip gilt hier also nicht.- Jede angenommene Meldung erzeugt ein Lebenszyklus-Ereignis
condition_updateund einen Audit-Eintrag.
Zustandswerte, die ein Mitglied im Editor der Einheit eingibt oder per Tabelle importiert, durchlaufen weiterhin die normale Prüfung (Herkunft und Freigabe).
Eine Meldung senden
updateCondition führt die gesendeten Werte mit den
Zustandsdaten der Einheit zusammen:
curl -s -X PATCH "$BATTERYPASS_URL/api/v1/batteries/$BATTERY_ID/condition" \
-H "Authorization: Bearer $BATTERYPASS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"measured_at": "2026-10-24T06:00:00Z",
"note": "Wöchentliche BMS-Auslesung",
"values": [
{ "field_key": "condition.capacity_fade", "value": 3.2 },
{ "field_key": "condition.number_of_full_cycles", "value": 412 }
]
}'| Regel | Wirkung |
|---|---|
| Zusammenführen | Nur die genannten Felder ändern sich; null leert ein Feld. Höchstens 50 Werte je Anfrage. |
measured_at | Jeder Wert hat sein eigenes oder das der Anfrage. Es darf nicht in der Zukunft und nicht vor dem Herstellungsdatum der Einheit liegen. |
| Ältere oder gleiche Messung | Ein Wert, der vor dem gespeicherten gemessen wurde, oder zur selben Zeit mit demselben Wert, wird übersprungen und in skipped[] genannt (older_measurement, unchanged). |
| Alles oder nichts | Ein Feld, das kein dynamisches Feld der Einheit ist (unknown_field), ein ungültiger Wert oder zusammengeführte Daten, die eine feldübergreifende Prüfung nicht bestehen, lehnen die ganze Meldung ab. |
Die Antwort nennt die angenommenen Werte (accepted), die übersprungenen (skipped), das erzeugte Ereignis
(event) und das Ergebnis der Veröffentlichung (publication).
Regel für die Neuveröffentlichung
Ist der Pass der Einheit veröffentlicht, müssen angenommene Zustandsdaten in eine neue Passversion gelangen. Wann
das geschieht, legt die Organisation in ihren Einstellungen im Portal fest (condition_republish, von
getCondition als republish geliefert):
| Regel | Verhalten |
|---|---|
immediate (Standard) | Dieselbe Anfrage veröffentlicht die nächste Version, mit der Begründung condition update und ohne Mitglied als Veröffentlichenden. |
daily | Ein täglicher Job um 02:00 UTC veröffentlicht jeden veröffentlichten Pass, dessen Einheit nach der aktuellen Version Zustandsdaten erhalten hat; die Meldungen eines Tages ergeben so eine Version. |
publication.outcome in der Antwort sagt, was geschehen ist:
outcome | Bedeutung |
|---|---|
published | In dieser Anfrage wurde eine neue Version veröffentlicht. |
unchanged | Am Pass hat sich nichts geändert, es kam keine Version hinzu. |
scheduled | Der tägliche Job veröffentlicht sie. |
blocked | Die Veröffentlichungsprüfung hat abgelehnt (siehe blockers); die Meldung bleibt angenommen, und der Pass wird update_needed, bleibt aber online. |
not_published | Die Einheit hat noch keinen veröffentlichten Pass. |
Lebenszyklus-Ereignisse
Ein Lebenszyklus-Ereignis hält fest, was an einem bestimmten Tag mit einer Einheit geschehen ist. Sie melden es
mit createLifecycleEvent und lesen die Historie, das
neueste zuerst, mit listLifecycleEvents.
Meldbarer Typ (ReportedEventType) | Typische Verwendung |
|---|---|
placed_on_market | Die Batterie wurde in Verkehr gebracht |
put_into_service | Die Batterie wurde in Betrieb genommen |
inspection | Eine Inspektion oder Diagnose |
repair | Eine Reparatur |
component_replaced | Ein Modul, eine Zelle oder ein anderes Bauteil wurde getauscht |
condition_update | Eine Zustandsauslesung, die als eigenes Ereignis festgehalten werden soll |
waste | Die Batterie wurde zu Abfall |
recycled | Die Batterie wurde recycelt |
custom | Alles andere, beschrieben in description |
Zwei weitere Arten zeichnet BatteryPass selbst auf: condition_update bei jeder angenommenen Zustandsmeldung und
repurposed, reused oder remanufactured, wenn ein Mitglied im Portal eine Second-Life-Batterie anlegt.
Ein Ereignis hat occurred_on (ein Datum zwischen Herstellungsdatum und heute), optional eine description (bis
zu 2000 Zeichen) und bis zu 20 evidence_ids, also Dokumente, die bereits in der Nachweisbibliothek liegen, etwa
ein Reparaturprotokoll. Ereignisse, die ein Schlüssel meldet, tragen source api und nennen den Schlüssel in
api_key.
Ereignisse sind Aufzeichnungen: Sie ändern keine Daten der Einheit. Ein Ereignis put_into_service setzt nicht
das Datum putting_into_service der Einheit, und waste oder recycled ändert weder ihren Batteriestatus noch
beendet es ihren Pass. Messwerte melden Sie mit updateCondition; Daten der Einheit ändern Mitglieder im Portal.
Ereignisse lassen sich nachträglich weder bearbeiten noch löschen.
Nächste Schritte
Herkunft und Freigabe
Jeder Wert behält Quelle, Urheber, Zeitpunkt und Nachweise und wird abgelöst statt überschrieben; deklarierte Daten werden geprüft, bevor sie in einen Pass gelangen, von einer zweiten Person, wenn die Organisation das Vier-Augen-Prinzip nutzt.
GS1 Digital Link
Der Link in jedem QR-Code und wie der Resolver Browser zur öffentlichen Seite und Maschinen zum öffentlichen JSON leitet.