/api/v1/passports/{id}/measurementsMesswerthistorie abrufen
Gibt den vollständigen Messwert-Verlauf für einen Batteriepass zurück, neueste zuerst (nach `measuredAt`). Jeder Eintrag ist ein `PassportMeasurement`-Objekt mit `_id`, `passportId`, `fieldKey`, `value`, `measuredAt`, `receivedAt`, `externalId?`, `unit?`, `materialized` (ob dieser Eintrag zum aktuellen Feldwert des Passes wurde) und `source`. **Nur Batteriepässe** — ein Nicht-Batteriepass gibt 422 `not_a_battery` zurück.
Filtern Sie mit `?fieldKey=<key>` auf ein Feld, `?from=<ISO 8601>` und `?to=<ISO 8601>` für ein Zeitfenster auf `measuredAt`. Die Seitengröße steuern Sie mit `?limit` (1–200, Standard 50). Paginieren Sie mit `?cursor=<nextCursor>` — übergeben Sie den `nextCursor`-Wert aus der vorherigen Antwort genau wie zurückgegeben; er ist opak und sein internes Format darf nicht angenommen werden. Die Antwort enthält `hasMore: true` und einen nicht-null-`nextCursor`, wenn weitere Ergebnisse vorhanden sind; `hasMore: false` bedeutet letzte Seite.
Eine alternative Adressierungsform gibt es unter `GET /api/v1/passports/by-serial/{serial}/measurements` mit denselben Query-Parametern und derselben Antwortform. Bei nicht eindeutiger Seriennummer fügen Sie `?gtin=<gtin>` zur Disambiguierung hinzu. Nur lesend; OAuth-Scope: `passports:read`.
Pfad-Parameter
- iderforderlich
ObjectId
Pass-ID.
Query-Parameter
- fieldKey
string
Filter auf einen einzelnen Feldschlüssel (z. B. `stateOfHealth`).
- from
string (ISO 8601)
Messwerte mit `measuredAt` ≥ diesem Wert zurückgeben.
e.g. 2027-01-01T00:00:00Z
- to
string (ISO 8601)
Messwerte mit `measuredAt` ≤ diesem Wert zurückgeben.
e.g. 2027-03-31T23:59:59Z
- limit
integer
Seitengröße (1–200, Standard 50).
- cursor
string
Der `nextCursor`-Wert aus der Antwort der vorherigen Seite. Opak — unverändert übergeben; nicht parsen oder konstruieren.
Header
- Authorizationerforderlich
string
`Bearer <token>` — entweder ein `tp_` 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
Anfrage
curl -sS \
"https://app.tracepass.eu/api/v1/passports/6650b2c3d4e5f6a7b8c9d0e1/measurements?fieldKey=stateOfHealth&limit=50" \
-H "Authorization: Bearer tp_REDACTED_xxxxxxxxxxxx"Antwort
{
"data": [
{
"_id": "6750a1b2c3d4e5f6a7b8c9d0",
"passportId": "6650b2c3d4e5f6a7b8c9d0e1",
"fieldKey": "stateOfHealth",
"value": 96.4,
"measuredAt": "2027-03-01T06:00:00Z",
"receivedAt": "2027-03-01T06:01:12Z",
"externalId": "bms-7781-2027-03-01",
"materialized": true,
"source": "api:tp_abc123"
},
{
"_id": "6740a1b2c3d4e5f6a7b8c9d0",
"passportId": "6650b2c3d4e5f6a7b8c9d0e1",
"fieldKey": "stateOfHealth",
"value": 97.1,
"measuredAt": "2027-02-01T06:00:00Z",
"receivedAt": "2027-02-01T06:00:55Z",
"materialized": false,
"source": "api:tp_abc123"
}
],
"hasMore": false,
"nextCursor": null
}