/api/v1/passports/{id}/condition-flagsImpostare i flag di classificazione condizionale
Scrive uno o più condition flag su un passaporto. Il corpo della richiesta è Record<flagKey, boolean | null> — true o false imposta il flag; null lo cancella. Vengono accettate solo le chiavi registrate per la categoria del passaporto; chiavi sconosciute restituiscono 400 con le chiavi valide per quella categoria.
Attenzione: approvare un flag può rendere obbligatori campi precedentemente facoltativi. Per i passaporti delle batterie, hasBMS: true attiva i campi BMS dell'Allegato XIII 4(b); rechargeable: true attiva i campi di ciclo di carica e state-of-health ai sensi dell'art. 10, par. 1; isStationaryBess: true attiva i campi dell'Allegato VII Parti A e B. Se il passaporto è già pubblicato e quei campi sono vuoti, il successivo controllo di conformità solleverà finding critici conditional_missing — compilare quei campi prima o immediatamente dopo aver impostato il flag, altrimenti la ripubblicazione fallirà.
Le scritture v1 sono predefinite a status: "approved" (integrazione fidata). Ogni modifica a un flag viene scritta nel registro di audit interno del flag con "via API key <prefix>". Il registro di audit completo è visibile nella dashboard ma rimosso da questa risposta. Supporta Idempotency-Key. Una forma alternativa di indirizzamento è disponibile su PATCH /api/v1/passports/by-serial/{serial}/condition-flags con le stesse forme di corpo e risposta. Conta come una scrittura v1 rispetto al limite giornaliero.
Parametri di percorso
- idobbligatorio
string (24 hex chars)
ID del passaporto.
Header
- Authorizationobbligatorio
string
Bearer <token>— una chiave APItp_(Developer → API Keys; più semplice, per server-to-server) oppure un access token OAuth 2.0 (Developer → OAuth Apps; per app autorizzate dall'utente, scoped e revocabili). La pagina Authentication contiene il flusso OAuth completo e l'elenco degli scopes.e.g. Bearer tp_REDACTED_xxxxxxxxxxxx
- Idempotency-Key
string
Chiave di idempotenza opzionale (UUID v4 o qualsiasi stringa opaca ≤ 64 caratteri). Stessa chiave + stesso corpo riproduce la risposta cached per 24 h.
Richiesta
curl -sS -X PATCH \
https://app.tracepass.eu/api/v1/passports/6650b2c3d4e5f6a7b8c9d0e1/condition-flags \
-H "Authorization: Bearer tp_REDACTED_xxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{"hasBMS": true, "rechargeable": true}'Risposta
{
"passportId": "6650b2c3d4e5f6a7b8c9d0e1",
"conditionProfile": {
"hasBMS": {
"value": true,
"status": "approved",
"source": "api:tp_abc123"
},
"rechargeable": {
"value": true,
"status": "approved",
"source": "api:tp_abc123"
}
},
"version": 4
}