---
title: Klassifizierungs-Flags lesen
description: Klassifizierungs-Flags eines Passes lesen — die genehmigten Ja/Nein-Fakten, die bedingte rechtliche Pflichten auslösen (BMS, aufladbar, BESS).
canonical: "https://www.tracepass.eu/de/docs/get-condition-flags"
locale: de
source: "https://www.tracepass.eu/de/docs/get-condition-flags"
---

# Klassifizierungs-Flags lesen

> Klassifizierungs-Flags eines Passes lesen — die genehmigten Ja/Nein-Fakten, die bedingte rechtliche Pflichten auslösen (BMS, aufladbar, BESS).

```http
GET /api/v1/passports/{id}/condition-flags
```

Gibt das aufgelöste **Condition Profile** für einen Pass zurück — `Record<flagKey, { value, status, source }>`. Condition Flags sind von einem Prüfer genehmigte Ja/Nein-Fakten über ein Produkt, die bedingte rechtliche Pflichten auslösen. Für Batteriepässe nach Verordnung (EU) 2023/1542 sind die registrierten Flags: `hasBMS` (Batteriemanagementsystem vorhanden), `rechargeable` (Batterie ist aufladbar), `externalStorageOnly` (Art. 8-Ausnahme gilt), und `isStationaryBess` (stationäres Batterie-Energiespeichersystem). Kategorien ohne registrierte Flags geben ein leeres Profil zurück.

Ein genehmigtes Flag, dessen Bedingung zutrifft, macht bestimmte Felder **erforderlich** — zum Beispiel setzt `hasBMS: true` bei einer Batterie Annex XIII 4(b) BMS-Felder voraus. Ein leeres Pflichtfeld ist ein **harter Veröffentlichungsblock** (Finding `conditional_missing` bei der Konformitätsprüfung). Ein Flag mit Status `pending_review`, ein fehlendes Flag oder `false` löst niemals bedingte Anforderungen aus.

Das interne `audit`-Array wird aus der v1-Antwort entfernt, um sie kompakt zu halten; nutzen Sie das Dashboard, um den Prüfverlauf pro Flag einzusehen. Eine alternative Adressierungsform gibt es unter `GET /api/v1/passports/by-serial/{serial}/condition-flags` mit derselben Antwortform. Nur lesend; zählt als ein v1-Passlesezugriff gegen das Tageslimit.

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `Authorization` | header | string | yes | `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. |
| `id` | path | ObjectId | yes | Pass-ID. |

## Examples

```bash
curl -sS \
  https://app.tracepass.eu/api/v1/passports/6650b2c3d4e5f6a7b8c9d0e1/condition-flags \
  -H "Authorization: Bearer tp_REDACTED_xxxxxxxxxxxx"
```

```typescript
const res = await fetch(
  `https://app.tracepass.eu/api/v1/passports/${id}/condition-flags`,
  { headers: { Authorization: `Bearer ${process.env.TRACEPASS_API_KEY}` } },
);
const { conditionProfile } = await res.json();
// e.g. { hasBMS: { value: true, status: "approved", source: "api:tp_abc123" } }
console.log(conditionProfile);
```

```python
import os, requests
res = requests.get(
    f"https://app.tracepass.eu/api/v1/passports/{passport_id}/condition-flags",
    headers={"Authorization": f"Bearer {os.environ['TRACEPASS_API_KEY']}"},
)
res.raise_for_status()
profile = res.json()["conditionProfile"]
for flag, data in profile.items():
    print(flag, "→", data["value"], f"({data['status']})")
```

## Responses

### 200 — Batteriepass — zwei Flags gesetzt

```json
{
  "passportId": "6650b2c3d4e5f6a7b8c9d0e1",
  "conditionProfile": {
    "hasBMS": {
      "value": true,
      "status": "approved",
      "source": "api:tp_abc123"
    },
    "rechargeable": {
      "value": true,
      "status": "approved",
      "source": "api:tp_abc123"
    }
  }
}
```

### 200 — Keine Flags gesetzt (leeres Profil)

```json
{
  "passportId": "6650b2c3d4e5f6a7b8c9d0e1",
  "conditionProfile": {}
}
```

### 404 — Nicht gefunden

```json
{ "error": "Passport not found" }
```

## Related

- [Flags setzen](https://www.tracepass.eu/de/docs/set-condition-flags.md)
- [Konformität prüfen](https://www.tracepass.eu/de/docs/passport-compliance.md)
