TracePass
Passports

Get condition flags

Returns the resolved **condition profile** for a passport — `Record<flagKey, { value, status, source }>`. Condition flags are reviewer-approved yes/no facts about a product that gate conditional legal duties. For battery passports under Regulation (EU) 2023/1542, the registered flags are: `hasBMS` (Battery Management System present), `rechargeable` (battery is rechargeable), `externalStorageOnly` (Art. 8 exemption applies), and `isStationaryBess` (Stationary Battery Energy Storage System). Categories with no flags registered return an empty profile.

GET/api/v1/passports/{id}/condition-flags
Download OpenAPI 3.1
GET/api/v1/passports/{id}/condition-flags

Get condition flags

Returns the resolved **condition profile** for a passport — `Record<flagKey, { value, status, source }>`. Condition flags are reviewer-approved yes/no facts about a product that gate conditional legal duties. For battery passports under Regulation (EU) 2023/1542, the registered flags are: `hasBMS` (Battery Management System present), `rechargeable` (battery is rechargeable), `externalStorageOnly` (Art. 8 exemption applies), and `isStationaryBess` (Stationary Battery Energy Storage System). Categories with no flags registered return an empty profile.

An `approved` flag whose gate applies makes specific fields **required** — for example, a `hasBMS: true` battery gates Annex XIII 4(b) BMS fields. An empty gated field is a **hard publish block** (`conditional_missing` finding on the compliance check). A flag that is `pending_review`, absent, or `false` never triggers conditional requirements.

The internal `audit` array is stripped from the v1 response to keep it compact; use the dashboard to inspect per-flag review history. An alternate addressing form exists at `GET /api/v1/passports/by-serial/{serial}/condition-flags` with the same response shape. Read-only; counts as one v1 passport read against the daily cap.

Path parameters

  • idrequired

    ObjectId

    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/condition-flags \
  -H "Authorization: Bearer tp_REDACTED_xxxxxxxxxxxx"

Response

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