Conformità della flotta — Plan Check API Online
Verifica turni o giornate di viaggio pianificati prima della spedizione. Invia i turni e i paesi in cui si svolgono come corpo POST JSON; per ogni turno ottieni i divieti di circolazione per camion che lo interessano (divieti nel fine settimana, domenicali, festivi e altri dal nostro calendario dei divieti per camion, filtrati per peso del veicolo), i giorni festivi e di fine settimana coinvolti, le violazioni EU 561 / AETR e 2002/15 che il piano causerebbe, e il primo inizio legale: dopo il riposo giornaliero o settimanale richiesto e al di fuori di ogni divieto bloccante.
POST https://nakordoni.eu/api/v2/data/fleet/compliance/plan-check
— classe di quota: heavy
| Parametro | Descrizione |
|---|---|
shifts | (corpo JSON, obbligatorio, max 60, intervallo max 62 giorni) [{start, end, countries?, drive_min?, other_work_min?, activities?}]. Senza activities il turno viene organizzato come altro lavoro, seguito da guida in blocchi da 4 h 30 con pause da 45 min. Ogni attività: {type: drive | other_work | availability | break | rest, start, end} — ISO-8601 (un datetime senza offset viene interpretato in tz) oppure secondi unix. Opzionali per i riposi: ferry (true su un traghetto o un treno), sleeper_cabin, scheduled_journey_h, in_vehicle, location (residence | operational_centre | elsewhere — verifica del rientro ogni 4 settimane ai sensi dell'EU 561 Art. 8(8a)). Opzionali per le guide: art12_exceed (true = guida oltre il limite ai sensi dell'EU 561 Art. 12 per raggiungere il centro operativo o la propria abitazione per un riposo settimanale). Gli intervalli vuoti tra le attività contano come riposo (segnalati in warnings); le sovrapposizioni vengono rifiutate. |
countries | (corpo JSON) Codici paese ISO usati per i turni che non indicano i propri, es. ["DE","AT"]. |
tz | (corpo JSON) Fuso orario IANA del piano (datetime senza offset), predefinito UTC. Le finestre di divieto usano il fuso orario di ciascun paese. |
weight_t | (corpo JSON) Peso del veicolo in tonnellate; i divieti con soglia di peso pari o superiore ad esso sono ignorati. Omesso = tutti i divieti sono inclusi. |
history | (corpo JSON) Attività recenti prima del piano (formato come in validate) affinché riposi e budget siano riportati. |
last_weekly_rest_end | (corpo JSON) Fine dell'ultimo riposo settimanale prima del piano. |
ruleset | (corpo JSON) eu561 (predefinito) o aetr. crew single | double. international_goods, include_wtd, wtd come in validate. |
allow_reduced_daily_rest | (corpo JSON) true = i suggerimenti possono usare un riposo giornaliero ridotto di 9 h (predefinito: 11 h). |
allow_reduced_weekly_rest | (corpo JSON) true = i suggerimenti possono usare un riposo settimanale ridotto di 24 h (predefinito: 45 h). |
blocking_types | (corpo JSON) Tipi di divieto che spostano un inizio suggerito (predefinito Sunday, Saturday, Holiday, Holiday Eve, General; solo divieti nazionali). Gli altri sono comunque segnalati. |
Campi della risposta — all’interno dell’oggetto data della busta. [] indica una lista, quindi data.items[].name è il campo name di ogni elemento. Un campo è null, assente o una lista vuota quando non abbiamo un valore — mai un segnaposto.
| Campo | Descrizione |
|---|---|
data.shifts[] | Per turno: index, start, end, countries, duration_min, flags[], violations[], suggested_start, suggested_end, delay_min, delay_reasons[] (daily_rest, weekly_rest, truck_ban:<CC>:<type>). |
data.shifts[].flags[] | type truck_ban (country, date, restriction_type, from, until, scope, details, min_weight_t, blocking, overlap_min), public_holiday (country, date, names, truck_ban_recorded) o weekend (country, date, day). |
data.violations[] | Ogni violazione EU 561 / AETR / 2002/15 del piano, nel formato di validate. |
data.remaining_after_plan | Budget di guida e prossimi riposi dopo l'ultimo turno pianificato (validate remaining.driving). |
data.summary | shift_count, shifts_flagged, shifts_moved, violation_count, ban_windows_considered, countries, ruleset, crew. |
data.warnings[] | es. shift_layout_overflows, holidays_unavailable; data.assumptions[] indica come è stato interpretato l'input mancante. |
curl -X POST "https://nakordoni.eu/api/v2/data/fleet/compliance/plan-check" \
-H "Authorization: Bearer NKD-DEV-XXXX-XXXX-XXXX" \
-H "Content-Type: application/json" \
-d '{
"countries": [
"DE"
],
"tz": "Europe/Berlin",
"weight_t": 40,
"shifts": [
{
"start": "2026-11-07T06:00:00",
"end": "2026-11-07T16:45:00"
},
{
"start": "2026-11-08T06:00:00",
"end": "2026-11-08T15:00:00"
}
]
}'
Aggiornato