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; no daily read counter is consumed by this endpoint.

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/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"
    }
  }
}