TracePass
Passports

Get latest measurements

Returns the most recent measurement for each accepted Annex XIII point 4 use-data field. The response is { data: { <fieldKey>: LatestMeasurement | null } } — every accepted key is always present; a key is null when no measurement has been received for that field yet. A LatestMeasurement carries value, measuredAt, and optionally unit and externalId.

GET/api/v1/passports/{id}/measurements/latest
Download OpenAPI 3.1
GET/api/v1/passports/{id}/measurements/latest

Get latest measurements

Returns the most recent measurement for each accepted Annex XIII point 4 use-data field. The response is { data: { <fieldKey>: LatestMeasurement | null } } — every accepted key is always present; a key is null when no measurement has been received for that field yet. A LatestMeasurement carries value, measuredAt, and optionally unit and externalId.

This endpoint reflects the same values the passport viewer shows for the dynamic data section. dynamicDataAsOf on the passport is the measuredAt of the newest measurement across all fields — this endpoint lets you retrieve each field's latest value and when it was taken. An alternate addressing form exists at GET /api/v1/passports/by-serial/{serial}/measurements/latest with the same response shape. If a serial is not unique within your account, add ?gtin=<gtin> to disambiguate. Read-only; OAuth scope: passports:read.

Path parameters

  • idrequired

    string (24 hex chars)

    Passport ID.

Headers

  • Authorizationrequired

    string

    Bearer <token> — either a tp_ API key (Developer → API Keys; simplest, for server-to-server) or an OAuth 2.0 access token (Developer → OAuth Apps; for user-authorized apps, scoped + revocable). The Authentication page has the full OAuth flow and scope list.

    e.g. Bearer tp_REDACTED_xxxxxxxxxxxx

Request

curl -sS \
  https://app.tracepass.eu/api/v1/passports/6650b2c3d4e5f6a7b8c9d0e1/measurements/latest \
  -H "Authorization: Bearer tp_REDACTED_xxxxxxxxxxxx"

Response

{
  "data": {
    "stateOfHealth": {
      "value": 96.4,
      "measuredAt": "2027-03-01T06:00:00Z",
      "externalId": "bms-7781-2027-03-01"
    },
    "numberOfFullEquivalentChargingCycles": {
      "value": 112,
      "measuredAt": "2027-03-01T06:00:00Z"
    },
    "currentStateOfCharge": null,
    "capacityFade": null,
    "powerFade": null,
    "stateOfCertifiedEnergy": null,
    "remainingCapacity": null,
    "remainingPowerCapability": null,
    "remainingRoundTripEfficiency": null,
    "evolutionOfSelfDischargeRate": null,
    "currentInternalResistancePack": null,
    "internalResistanceIncrease": null,
    "dynamicRatedCapacity": null,
    "dynamicPowerCapability": null,
    "dynamicInternalResistance": null,
    "dynamicEnergyRoundTripEfficiency": null,
    "dynamicExpectedLifetimeCycles": null,
    "numberOfChargingEvents": null,
    "negativeEvents": null,
    "temperatureConditionsHistorical": null
  }
}