Documentazione dell'API
REST + JSON su HTTPS. Un URL di base, una chiave, envelope prevedibili.
| URL di base | https://nakordoni.eu/api/v1/data/ |
|---|---|
| Formato | JSON, UTF-8 |
| Auth | Authorization: Bearer NKD-DEV-… |
| Versionamento | Versionamento nel percorso e per endpoint: /api/v1/… è stabile e le sue risposte non cambiano mai. Un percorso di versione superiore (/api/v2/…, /api/v4/…) fornisce il nuovo comportamento solo per gli endpoint che sono cambiati e per gli altri torna in modo trasparente alla versione inferiore. Ogni prodotto mostra la versione più alta che documenta: puntate a quella, non a questa nota. Se una versione più recente sostituisce quella chiamata dalla tua chiave, ti inviamo un'e-mail e mostriamo un avviso nel portale sviluppatori — non devi scoprirlo dal registro delle modifiche. |
In questa pagina
Autenticazione
Ogni richiesta necessita della tua chiave API nell'header Authorization (consigliato) o come parametro ?key=.
curl "https://nakordoni.eu/api/v1/data/queue?ppid=id_13" \ -H "Authorization: Bearer NKD-DEV-XXXX-XXXX-XXXX"
Envelope di risposta
{
"ok": true,
"api_version": "v1",
"product": "queue",
"attribution": "Data by nakordoni.eu",
"terms": "https://nakordoni.eu/en/p/developer_api_terms",
"data": { ... },
"usage": { "limit": 1000, "used": 42, "reset": "2026-06-06T00:00:00Z" }
}
Gli errori restituiscono ok:false con error.code (missing_api_key, invalid_api_key, qps_exceeded, quota_exceeded, unknown_product, product_unavailable, not_approved, bad_request, duplicate_request, market_not_allowed, internal_error, status_unavailable, timeout) e stato HTTP 400/401/403/404/429/500/503/504. Gli header di rate-limit X-Devapi-Limit e X-Devapi-Remaining vengono inviati a ogni risposta conteggiata. ok:false fa fede — non leggere mai data in una chiamata fallita. L'oggetto usage è presente in ogni prodotto tariffato; /status è pubblico e non tariffato, quindi non restituisce usage.
Quote
| Explorer | |
|---|---|
| chiamate/giorno sulle API di dati standard | 1,000 |
| chiamate/giorno sulle API di previsioni e statistiche | 200 |
| chiamate di percorso per camion/giorno | 10 |
| QPS | 2 |
I contatori giornalieri si azzerano a mezzanotte UTC. Ricevi un'e-mail all'80% e al 100% della quota.
I piani a pagamento alzano ognuno di questi limiti. Piani attuali e relative soglie: Piani
Esempi di codice
curl
curl "https://nakordoni.eu/api/v1/data/queue?ppid=id_13" \ -H "Authorization: Bearer $NKD_API_KEY"
JavaScript (fetch)
const res = await fetch('https://nakordoni.eu/api/v1/data/forecast?ppid=id_13&prediction_steps=24', {
headers: { Authorization: `Bearer ${process.env.NKD_API_KEY}` }
});
const { ok, data, error, usage } = await res.json();
if (!ok) throw new Error(error?.code ?? res.status);
console.log(`forecast points: ${data.length}, calls left today: ${usage.limit - usage.used}`);
Python (requests)
import os, requests
r = requests.get(
"https://nakordoni.eu/api/v1/data/stats",
params={"ppid": "id_15", "compare": 1},
headers={"Authorization": f"Bearer {os.environ['NKD_API_KEY']}"},
timeout=15,
)
payload = r.json()
print(payload["data"]["daily"], payload["usage"])
Excel (Power Query)
Importa dati live su code, previsioni o divieti per i camion direttamente in una cartella di lavoro con il connettore JSON integrato di Power Query — senza codice, con aggiornamento pianificato. Lo stesso schema di Headers funziona per ogni prodotto di questa API — basta cambiare l'URL.
Data → Get Data → From Other Sources → Blank Query, then Home → Advanced Editor and paste:
let
ApiKey = "NKD-DEV-XXXX-XXXX-XXXX",
Source = Json.Document(Web.Contents("https://nakordoni.eu/api/v1/data/queue",
[Query = [ppid = "id_13"], Headers = [Authorization = "Bearer " & ApiKey]])),
data = Source[data],
AsTable = Record.ToTable(data)
in
AsTable
Conserva la chiave API all'interno della query M (Home → Advanced Editor), non in una cella del foglio — Power Query blocca una richiesta web costruita da un'altra query o cella ("Formula.Firewall"), a meno che il livello di privacy non sia impostato su Organizational.
Più valichi di frontiera in un'unica tabella (dashboard per flotte) — e.g. every truck crossing UA→PL (crossing_type=9; in v3 that one code covers both freight lanes):
let
ApiKey = "NKD-DEV-XXXX-XXXX-XXXX",
Source = Json.Document(Web.Contents("https://nakordoni.eu/api/v4/data/border/1/2/9",
[Headers = [Authorization = "Bearer " & ApiKey]])),
checkpoints = Source[data],
AsTable = Table.FromRecords(checkpoints)
in
AsTable
Data → Refresh All in Excel, o un aggiornamento pianificato in Power BI / Excel Online, mantiene i dati aggiornati — senza codice di polling.
Integrazione ERP (BAS / BAF e piattaforme della famiglia 1C)
BAS / BAF e le altre piattaforme della famiglia 1C possono chiamare questa API direttamente da un’attività pianificata — HTTPConnection più ReadJSON, senza middleware né servizi aggiuntivi da ospitare. Lo scenario più diffuso mantiene aggiornato un registro informazioni con i prezzi dei carburanti nell’UE.
Aggiornare un registro informazioni (prezzi carburanti, tutti i paesi in una chiamata)
// Scheduled job — runs once a day
Connection = New HTTPConnection("nakordoni.eu", 443, , , , 30, New OpenSSLSecureConnection);
Headers = New Map;
Headers.Insert("Authorization", "Bearer NKD-DEV-XXXX-XXXX-XXXX");
Request = New HTTPRequest("/api/v1/data/fuel", Headers);
Response = Connection.Get(Request);
Reader = New JSONReader;
Reader.SetString(Response.GetBodyAsString("UTF-8"));
Answer = ReadJSON(Reader, True);
Reader.Close();
If Answer["ok"] <> True Then
// Answer["error"]["code"] says why; Answer["usage"] holds your quota state
Return;
EndIf;
For Each Row In Answer["data"] Do
Record = InformationRegisters.FuelPrices.CreateRecordManager();
Record.Period = CurrentSessionDate();
Record.Country = Row["country"]; // "PL", "DE", "SK", "RO", ...
Record.Diesel = Row["diesel"];
Record.Petrol = Row["petrol"];
Record.LPG = Row["lpg"];
Record.Currency = Row["currency"];
Record.Write();
EndDo;
Tre cose da azzeccare: passate New OpenSSLSecureConnection sulla porta 443, altrimenti la richiesta muore sul TLS; chiamate /api/v1/data/fuel senza il parametro country, così una sola richiesta restituisce tutti i paesi invece di una chiamata per paese; e verificate ok prima di toccare data — gli errori tornano come ok:false con un error.code, non come eccezione. L’esempio usa il set di parole chiave inglese della piattaforma; gli equivalenti localizzati (HTTPСоединение, ПрочитатьJSON, РегистрыСведений) si comportano allo stesso modo.
I prezzi dei carburanti alla fonte cambiano una volta al giorno, quindi un’attività pianificata una o due volte al giorno basta e resta ampiamente dentro la quota gratuita Explorer. I dati di coda in tempo reale (queue, multi, border) cambiano ogni pochi minuti: interrogateli con il vostro ritmo e usate multi per leggere fino a 5 valichi in una sola richiesta invece che in un ciclo.
Server MCP
Preferisci le chiamate agli strumenti invece di REST? Gestiamo un vero server MCP (trasporto Streamable HTTP) che espone un sottoinsieme sicuro, di sola lettura, di questa API come strumenti MCP — stessa chiave API, stessa quota, solo un trasporto diverso.
Endpoint: https://nakordoni.eu/mcp · Server card: /.well-known/mcp/server-card.json
get_api_status — no key required list_checkpoints — country, lang get_border_queue — origin, destination, crossing_type, lang get_live_queue — ppid, lang get_queue_forecast — ppid, prediction_steps
Configurazione client (Claude Desktop / Claude Code):
{
"mcpServers": {
"nakordoni": {
"url": "https://nakordoni.eu/mcp",
"headers": { "Authorization": "Bearer NKD-DEV-XXXX-XXXX-XXXX" }
}
}
}
OAuth per le integrazioni (Home Assistant e altre)
Le integrazioni i cui utenti hanno bisogno ciascuno della propria chiave (integrazioni personalizzate di Home Assistant, app desktop e mobili) possono far accedere l’utente invece di fargli incollare una chiave. Il flusso è OAuth 2.0 authorization code per client pubblici con PKCE (S256) — non c’è alcun client secret. Il token di accesso che restituiamo è la chiave NKD-DEV dell’utente, che invii poi in un header Bearer esattamente come oggi.
I client non sono self-service: fai richiesta nella pagina Integrazioni, esaminiamo ogni integrazione manualmente ed emettiamo un client ID con gli URI di reindirizzamento consentiti. Le chiavi emesse tramite un client approvato sono attivate istantaneamente per i mercati approvati per quell’integrazione. Richiedi un client di integrazione →
GET https://api.nakordoni.dev/oauth/authorize | response_type=code, client_id, redirect_uri (deve corrispondere esattamente a un URI registrato), state, code_challenge, code_challenge_method=S256 |
POST https://api.nakordoni.dev/oauth/token | grant_type=authorization_code, code, code_verifier, redirect_uri, client_id — oppure grant_type=refresh_token, refresh_token, client_id |
POST https://api.nakordoni.dev/oauth/revoke | token (refresh token, o la chiave stessa), client_id |
- Il codice di autorizzazione è valido per 60 secondi, monouso e legato al client, all’utente, all’URI di reindirizzamento e al PKCE challenge.
- La chiave viene restituita solo nel corpo della risposta del token (access_token) — mai in un URL. Conservala come una password.
- expires_in è di 30 giorni; un refresh restituisce la stessa chiave finché è attiva. Se l’utente revoca o rigenera la chiave, il refresh fallisce con invalid_grant e le chiamate API restituiscono 401 — avvia una nuova autenticazione.
- Le richieste hanno un limite di frequenza per IP e un tetto giornaliero per client; gli errori seguono la RFC 6749 (error, error_description).
- Ogni utente ottiene al massimo la propria quota di paesi: se la tua integrazione elenca più paesi dei posti liberi dell’utente, li sceglie nella pagina di consenso (passa markets=DE,AT a /oauth/authorize per preselezionarli). Entrambe le risposte token restituiscono anche markets_approved (paesi approvati dell’utente), markets_allowed (la sua quota; null = illimitata), markets_available (i tuoi paesi che non ha ancora) e upgrade_url (dove aggiunge «Paesi extra»).
curl -X POST https://api.nakordoni.dev/oauth/token \
-d grant_type=authorization_code -d client_id=nkd_xxxxxxxxxxxxxxxxxxxxxxxx \
-d code=CODE -d code_verifier=VERIFIER \
-d redirect_uri=https://my.home-assistant.io/redirect/oauth
{"access_token":"NKD-DEV-XXXX-XXXX-XXXX","token_type":"Bearer","expires_in":2592000,
"refresh_token":"nkdrt_…","scope":"data","markets_approved":["DE"]}
Home Assistant
Usa config_entry_oauth2_flow con LocalOAuth2ImplementationWithPkce (client_secret vuoto) e l’URI di reindirizzamento https://my.home-assistant.io/redirect/oauth, preregistrato per i client Home Assistant. Leggi la chiave da entry.data["token"]["access_token"] e continua a chiamare l’API con Authorization: Bearer. In caso di 401 dall’API, solleva ConfigEntryAuthFailed così che Home Assistant proponga una nuova autenticazione.
from homeassistant.helpers import config_entry_oauth2_flow
impl = config_entry_oauth2_flow.LocalOAuth2ImplementationWithPkce(
hass, DOMAIN, client_id="nkd_xxxxxxxxxxxxxxxxxxxxxxxx",
authorize_url="https://api.nakordoni.dev/oauth/authorize",
token_url="https://api.nakordoni.dev/oauth/token",
)
config_entry_oauth2_flow.async_register_implementation(hass, DOMAIN, impl)
Integrazioni: mostrare i limiti residui
GET /api/v2/account/usage — Quanto resta dei tuoi limiti in questo momento, per la chiave con cui chiami: piano, limite al secondo e, per ogni classe di quota giornaliera (cheap, heavy, route), limite, usato, residuo e ora di azzeramento (mezzanotte UTC); inoltre i tuoi paesi come li vede questa chiave e dove passare a un piano superiore. Non conteggiato, 30 chiamate al minuto per chiave.
Le chiavi di integrazione (OAuth) possono sempre chiamare GET /api/v2/account/usage, qualunque siano i prodotti consentiti all'integrazione. I numeri coincidono con le intestazioni X-Devapi-Limit e X-Devapi-Remaining; X-Devapi-Reset indica l'ora di azzeramento come timestamp Unix.
{"ok":true,"api_version":"v2","product":"account-usage","data":{
"plan":{"slug":"explorer","name":"Explorer"},"qps":2,
"quotas":{"cheap":{"limit":1000,"used":42,"remaining":958,"reset_at":"2026-10-17T00:00:00Z"},"heavy":{…},"route":{…}},
"markets":{"approved":["DE"],"allowed":1,"available":["AT"],"key_bound":true},
"pass":{"active":true,"expires_at":"2026-10-19T14:05:00Z","days_left":3},"upgrade_url":"https://nakordoni.eu/en/developers/billing",
"pass_url":"https://nakordoni.eu/en/developers/billing?section=trip-pass#trip-pass"}}
Quando si raggiunge un limite, l'errore dice dove andare: 429 quota_exceeded restituisce anche error.reset_at (mezzanotte UTC) ed error.upgrade_url; 403 market_not_allowed e 403 integration_product_not_allowed restituiscono error.upgrade_url. Le chiavi d'integrazione ricevono anche error.pass_url (Trip Pass, sotto).
Home Assistant: interroga /account/usage al massimo ogni 15 minuti ed esponi un sensore «chiamate rimaste» da quotas.cheap.remaining. Tra un'interrogazione e l'altra leggi X-Devapi-Remaining dalle chiamate normali. Su 429 quota_exceeded o 403 market_not_allowed crea un repair issue con link a error.upgrade_url e sospendi le chiamate fino a reset_at.
Trip Pass
Gli utenti delle integrazioni possono acquistare un Trip Pass (1, 3, 7 o 14 giorni, pagamento una tantum) nella pagina Fatturazione. Finché è attivo, la chiave dell'integrazione ottiene tutti i paesi dell'integrazione, più chiamate di percorso camion e dati al giorno e una frequenza più alta; prodotti dell'integrazione, limiti delle previsioni e ritardo dei dati non cambiano. Le chiavi sviluppatore dello stesso account non vengono mai alzate.
Per le chiavi d'integrazione, account/usage restituisce pass: {active, expires_at, days_left} e pass_url (sezione Trip Pass della pagina Fatturazione); 429 quota_exceeded e 403 market_not_allowed / integration_product_not_allowed riportano lo stesso error.pass_url. Per le altre chiavi entrambi sono null.
Country and vehicle-type codes
Border endpoints address countries and vehicle types by numeric id: /api/v1/data/border/{origin}/{destination}/{crossing_type}. destination also accepts a comma-separated list or the word all. The ids are stable and are the same in every product that takes an origin, a destination or a crossing_type.
Country ids
The border products accept the ids marked as origins below; the neighbours column is what destination=all expands to for that origin. Ids without neighbours are countries we name in responses but hold no crossings for yet. The Checkpoints Directory returns the origin, destination and crossing_type of every crossing we actually serve, so it stays the authoritative list.
| id | Country | Borders with (destination ids) |
|---|---|---|
1 |
Ucraina | 2, 3, 4, 5, 6, 7 |
2 |
Polonia | 1, 7, 18 |
3 |
Slovacchia | 1 |
4 |
Ungheria | 1, 5, 13 |
5 |
Romania | 1, 4, 6, 12, 13 |
6 |
Moldavia | 1, 5 |
7 |
Bielorussia | 1, 2, 8, 9 |
8 |
Lituania | 7 |
9 |
Lettonia | 7 |
11 |
Slovenia | 16, 20 |
12 |
Bulgaria | 5, 13, 14, 15, 19 |
13 |
Serbia | 4, 5, 12, 15, 16, 17, 22, 23 |
14 |
Turchia | 12, 19 |
15 |
Macedonia del Nord | 12, 13, 19, 21, 23 |
16 |
Croazia | 11, 13, 17, 22 |
17 |
Bosnia ed Erzegovina | 13, 16, 22 |
18 |
Germania | 2 |
19 |
Grecia | 12, 14, 15, 21 |
20 |
Italia | 11 |
21 |
Albania | 15, 19, 22, 23 |
22 |
Montenegro | 13, 16, 17, 21, 23 |
23 |
Kosovo | 13, 15, 21, 22 |
24 |
Austria | — |
25 |
Cechia | — |
26 |
Francia | — |
27 |
Spagna | — |
28 |
Regno Unito | — |
29 |
Paesi Bassi | — |
30 |
Belgio | — |
31 |
Portogallo | — |
33 |
Estonia | — |
34 |
Svizzera | — |
35 |
Danimarca | — |
36 |
Finlandia | — |
37 |
Lussemburgo | — |
38 |
Norvegia | — |
39 |
Svezia | — |
Vehicle types (crossing_type)
| id | Vehicle type | Accepted by /border/ |
|---|---|---|
4 |
Auto | ✔ |
5 |
Auto. Tax Free | ✔ |
6 |
Autobus | ✔ |
7 |
Pedoni | ✔ |
8 |
Trasporto Merci | ✔ |
9 |
Trasporto Merci fino a 7,5 tonnellate | ✔ |
10 |
Traghetto - Auto | — |
11 |
Traghetto - Autobus | — |
12 |
Traghetto - Pedoni | — |
13 |
Traghetto - Trasporto Merci | — |
14 |
Trasporto Merci fino a 3,5 tonnellate | — |
The label in this table is the crossing_type_label the API returns with every response, in the language you request. Types outside the accepted list belong to crossings the directory carries but the border products do not answer for — ferry (10-13), freight up to 3.5 t (14) and rail (15) — and asking for one returns 400, not an empty result. Read crossing_type from the Checkpoints Directory rather than assuming: a crossing returns data only for the types it actually has.
Prodotti
Scegli un endpoint per il riferimento completo, i parametri, le versioni e una sandbox dal vivo.
Standard utilizza la quota dati standard · Pesante utilizza la quota di previsioni e statistiche — vedi Quote · Percorso camion usa una propria quota di percorsi per camion — vedi Quote
Code di frontiera
Stato in tempo reale di ogni prodotto Developer API: online / degradato / offline, latenza di risposta e ora dell'ultima verifica…
Elenco di tutti i valichi di frontiera monitorati: ID, nomi, paesi, coordinate e stato. Usalo per scoprire i valori ppid per le a…
Tutti i valichi su un confine dato + tipo di veicolo in una sola chiamata. Supporta destinazione singola, elenco separato da virg…
Trova i PPID dei valichi per nome in qualsiasi lingua. Restituisce tutti i PPID per quella posizione raggruppati per tipo di veic…
Code in tempo reale, stima del tempo di attesa e stato per qualsiasi valico monitorato. Include un blocco snapshot: coda attuale …
Wait time adjusted for live traffic flow and weather, with a full breakdown of each adjustment, plus the same wait_status/trend f…
Ottieni lo stato delle code e la freschezza dei dati per un massimo di 5 valichi in un'unica richiesta. La quota è conteggiata co…
Valichi alternativi nelle vicinanze sullo stesso confine con le code attuali e gli scarti di distanza.
Quando un valico è stato aggiornato l'ultima volta, da quale fonte, e una valutazione della freschezza.
Previsioni e statistiche
Previsione tramite ensemble ML dei livelli di coda: orizzonti di 24 ore e 7 giorni (168h) con intervalli di confidenza. Lo stesso…
Statistiche storiche orarie della coda per valico e data: 24 valori orari, media/min/max giornaliere, ore di punta e ore più tran…
Statistiche settimana tipica per checkpoint: matrice 7×24 giorno-settimana×ora (mediana + banda p25/p75), giorno più tranquillo/t…
Carburante e luoghi
Prezzi del carburante nei paesi EU — medie per country, stazioni più vicine per coordinate, o stazioni vicino a un valico di fron…
Prezzi carburante per città: la stazione più economica e la media delle 5 più economiche.
Le stazioni di rifornimento più vicine a un punto o a una città, con i prezzi attuali per tipo di carburante, ordinate per distan…
Le stazioni di rifornimento più economiche attorno a un punto o a una città, classificate per prezzo in base al tipo di carburant…
Il miglior prezzo del carburante disponibile per QUALSIASI punto in Europa, risolto lungo una scala di ripiego a tre livelli, in …
La tabella dei nomi dietro ogni prodotto carburante: il nostro vocabolario canonico dei gradi (diesel, premdiesel, truckdiesel, h…
Parcheggi per camion (14k+), docce gratuite, servizi e supermercati in tutta Europa con coordinate. I risultati sono ordinati dal…
I parcheggi per camion, gli Autohöfe e le aree di sosta più vicini a un punto o a una city — ordinati per distanza con distance_k…
I supermercati e i negozi alimentari più vicini a un punto o a una city — ordinati per distanza con distance_km, nome, coordinate…
Le docce gratuite per autisti più vicine a un punto o a una city — ordinate per distanza con distance_km, nome, coordinate e coun…
I ristoranti più vicini adatti agli autisti rispetto a un punto o a una city — ordinati per distanza con distance_km, nome, coord…
Le zone industriali e logistiche più vicine a un punto o a una city (oltre 3k+ in tutta Europa) — ordinate per distanza con dista…
Tassi di cambio basati su EUR per PLN, CZK, HUF, USD, GBP, CHF, NOK e UAH, fonte Frankfurter (ECB), cache 6 ore. Nessun parametro…
Uffici di cambio
Città polacche in cui elenchiamo uffici di cambio (kantors), con il numero di uffici di ciascuna e quanti pubblicano attualmente …
Elenco degli uffici di cambio (kantors) in Polonia: nome, indirizzo, coordinate, orari, telefono, sito web e se l'ufficio quota a…
Un ufficio di cambio con i suoi tassi attuali di acquisto e vendita contro PLN. Tassi al dettaglio e all'ingrosso sono restituiti…
Dove comprare o vendere adesso una valuta contro PLN in una città: gli uffici con i migliori tassi AL DETTAGLIO, in classifica, a…
Storico del tasso al dettaglio di una valuta contro PLN, per un ufficio o per un'intera città (tasso medio e migliore tra i suoi …
Pianificazione del viaggio
Un piano porta a porta per un viaggio di frontiera: il percorso, i valichi che vi si trovano con la coda in tempo reale o una pre…
Tempo di percorrenza + coda alla frontiera per tutti i valichi da un punto di origine.
Restrizioni europee alla circolazione dei camion per country e data, incluse le limitazioni stagionali e festive. Ogni divieto ri…
Normative sull'apertura domenicale dei negozi e prossime domeniche di apertura per paese UE regolamentato.
Festività pubbliche ufficiali per paese europeo — date, nomi locali e tipo, inclusi gli elenchi completi di festività per ogni pa…
Quale lato di un pullman riceve il sole o l'ombra durante un viaggio, e quali posti sono i migliori per l'ombra o per la vista. I…
I modelli di autobus accettati da bus-sun-side (classi di veicoli generiche, non marche specifiche) con disposizione dei posti, f…
Prova la Bus Sun Side API senza codice: scegli una linea e un autobus, guarda mappa dei posti, mappa e cronologia e copia la chiamata.
Apri il pianificatore →Calendario dei giorni festivi
Festività pubbliche, bancarie, regionali, religiose e ricorrenze per 51 paesi (Europa + Golfo) e le rispettive regioni, 2020-2035…
Calcolo dei giorni lavorativi per un paese, facoltativamente una regione: conta i giorni lavorativi tra due date, aggiunge o sott…
I 51 paesi (Europa + Golfo) coperti dal calendario dei giorni festivi, ciascuno con i giorni del fine settimana, il fuso orario, …
Impatto sul business delle festività stimato dal modello, per retail, logistica e pianificazione della domanda (Pro e superiori).…
Logistica
API di calcolo percorso per camion con distributori di carburante e parcheggi per camion lungo il tragitto, più stazioni di pesat…
Truck toll cost for a route across Europe. Send the route line as coordinates (for example the geometry from truck-route or from …
Cost index of a truck lane in Europe: the EUR per km cost floor of one loaded trip from A to B for a vehicle class — fuel, tolls,…
Verifica l'attività registrata di un conducente rispetto alle norme su guida e riposo del Regolamento EU 561/2006 (o AETR) e all'…
I parametri delle norme usati dai controlli di conformità, in JSON, così che un'app possa mostrarli: Reg. (CE) 561/2006 (come mod…
Verifica turni o giornate di viaggio pianificati prima della spedizione. Invia i turni e i paesi in cui si svolgono come corpo PO…
Prova la Bus Sun Side API senza codice: scegli una linea e un autobus, guarda mappa dei posti, mappa e cronologia e copia la chiamata.
Apri il pianificatore →Autisti e strade
Segnalazioni approvate sulle condizioni stradali vicino ai confini e sui principali corridoi: buche, lavori in corso, chiusure, g…
Se un country richiede una vignetta per la circolazione autostradale, i prezzi attuali per durata e dove saperne di più — per cou…
Negozi degli operatori mobili e punti WiFi utili agli autisti in viaggio, dal più vicino rispetto a un punto o a una city con dis…
Prestazioni di attraversamento della frontiera per vettore di autobus: attraversamenti, minuti di attesa medi/mediani/min/max — c…
Il pericolo stradale a un valico su un'unica scala 0–5: strada libera, nebbia, neve, pioggia, ghiaccio o vento forte — nella tua …
Air-raid alerts and airborne objects near ONE border crossing. Anchor on a checkpoint (ppid), a coordinate pair or a city and get…
Your Fleet (NakBus Live)
La tua flotta NakBus Live: ogni veicolo registrato alla tua azienda con targa, etichetta, linea assegnata, flag mappa pubblica, s…
Dove si trovano i tuoi autobus in questo momento — una riga per ogni veicolo attivo con lat/lon, timestamp e la sua età, velocità…
Traccia GPS registrata dei tuoi veicoli: ogni punto di posizione memorizzato in una finestra temporale, in ordine cronologico, co…
Assistente AI
Poni al nostro assistente IA di produzione qualsiasi domanda sull'attraversamento delle frontiere (code, previsioni, regole, carb…
Il tuo assistente IA, basato sui TUOI contenuti e sui NOSTRI dati di frontiera in tempo reale. Dacci i tuoi file markdown o indic…
Altro
Quanto resta dei tuoi limiti in questo momento, per la chiave con cui chiami: piano, limite al secondo e, per ogni classe di quot…
Pedestrian routes ranked by how much of the way lies in building and tree shade at the time of the walk (heat) or in sun (cold). …
Shade per H3 resolution-11 hex (about 25 m) for a small bounding box at a given time: share of open ground in building shade and …
Shade share and pavement temperature estimate of one walk for every 15-minute departure in the next hours, and the best window. P…
Places to cool a dog down near a point: safe water access on lake and river shores, bathing places, drinking water, forests, all-…
Cool spots for dogs along a walking route: every spot within the corridor with its position along the walk and the shade at the t…
Truck-accessible stops within 2 km of a route you already have: truck parkings shaded by trees (canopy share within 100 m), rest …
Market rate of a truck lane in Europe: the median and the 75th percentile price in EUR per km per month, from prices that transpo…
Esportazione dei dati storici
Gli sviluppatori approvati possono scaricare lo storico pubblicato delle code di frontiera, mediato per ora, per un massimo di 5 valichi (finestra mobile fino a 90 giorni) in CSV, NDJSON o JSON compressi con gzip. È una funzione solo del portale — NON un endpoint API; le esportazioni si creano e si scaricano dalla scheda «Esportazione dati» del tuo account.
L'accesso viene concesso su richiesta: apri un ticket Data indicandoci quali valichi, l'intervallo temporale e l'uso previsto. Una volta approvato, nel tuo account compare la scheda Esportazione dati. Limite predefinito: 1 esportazione al giorno, fino a 5 valichi ciascuna — chiedici di aumentarlo.
Campi — una riga per valico per ogni ora UTC
| Parametro | Descrizione |
|---|---|
ppid | ID del valico |
checkpoint_name | Nome del valico |
hour_utc | Fascia oraria, ISO-8601 UTC |
direction | ad es. UA->PL |
vehicle_type | car / bus / truck / pedestrian |
avg_queue_length | Lunghezza media oraria della coda |
avg_wait_minutes | Attesa media oraria; null quando un valico non ha un feed ufficiale di attesa |
sample_count | Numero di osservazioni nell'ora |
Vengono esportati solo dati pubblicati, che superano i nostri controlli di anomalia e qualità (nessun dato grezzo delle singole segnalazioni). Tutti i timestamp sono in UTC. I file restano disponibili 10 giorni.
Provenienza: ogni file incorpora nell'intestazione un'impronta firmata (sha256 + HMAC), così qualsiasi copia può essere in seguito confermata come dato autentico di nakordoni.eu e verificata contro manomissioni — anche dopo il download.
# sha256: 3f9c… # signature: e87b… ppid,checkpoint_name,hour_utc,direction,vehicle_type,avg_queue_length,avg_wait_minutes,sample_count id_10,Hrushiv,2026-06-12T02:00:00Z,UA->PL,car,11,,4
Cosa puoi creare
Gli stessi prodotti di dati generano gli elementi visivi di nakordoni.eu — grafici di previsione settimanali, profili orari delle code, schede di stato in tempo reale. Un assaggio di ciò che contengono le API di previsioni e statistiche:
Attribuzione
Le integrazioni del piano Explorer devono mostrare un link visibile "Data by nakordoni.eu" ovunque vengano visualizzati i dati. È ciò che mantiene gratuito il piano gratuito.
Il codice esatto
Copia questo snippet così com'è. Il link deve rimanere indicizzabile: un <a href> HTML visibile e semplice accanto ai dati, che Google può indicizzare e seguire — NON aggiungere rel="nofollow", rel="sponsored" o rel="ugc" e non nasconderlo con CSS. Un link aggiunto tramite JavaScript va bene se compare nella pagina renderizzata da Google (Termini Developer API v1.0, sezione 8.1).
<a href="https://nakordoni.eu/" title="Border queues, forecasts & statistics">Data by nakordoni.eu</a>
Variante compatta in piccolo (es. sotto un grafico o widget):
<p style="font-size:12px;margin:4px 0"> Data by <a href="https://nakordoni.eu/">nakordoni.eu</a> </p>
Puoi anche collegarti alla tua versione linguistica, ad esempio https://nakordoni.eu/it/ — vale qualsiasi link HTML visibile e normale verso nakordoni.eu. Il testo dell'ancora "Data by nakordoni.eu" deve restare in inglese.
Dove posizionarlo
- Direttamente accanto o sotto il blocco dati (tabella, grafico, widget, risposta) — sulla stessa schermata, visibile senza clic aggiuntivi.
- Su ogni pagina o schermata dell'app dove compaiono i nostri dati — non solo su una pagina "chi siamo".
- Dimensione e contrasto leggibili: almeno ~11px, non nascosto, non compresso, non del colore dello sfondo.
- App mobili native senza link HTML: mostra il testo "Data by nakordoni.eu" nella schermata dei dati e metti il link cliccabile nella schermata informazioni.
Verifichiamo periodicamente l'attribuzione sulla "pagina in cui vengono usati i dati" indicata in fase di registrazione. Un'attribuzione mancante o nascosta sul piano gratuito Explorer comporta prima un sollecito e poi la sospensione della chiave. I clienti su un piano a pagamento possono omettere l'attribuzione.
I controlli avvengono circa una volta a settimana tramite il nostro verificatore, il cui user agent contiene NakordoniComplianceBot/1.0. Apre solo le pagine elencate nella tua dashboard sviluppatore, non segue altri link e ignora robots.txt per quelle pagine, perché sono proprio quelle che ci hai chiesto di controllare. Se una protezione anti-bot o un firewall blocca i crawler sconosciuti, consenti questo user agent — se non riusciamo ad aprire una pagina, ti scriviamo in un ticket.
Licenza dati e mercati
La tua chiave API concede una licenza d'uso dei nostri dati solo nei paesi dichiarati al momento della registrazione. Esaminiamo ogni dichiarazione prima di concedere l'accesso completo, poiché i nostri dati sono un nostro prodotto e non li concediamo in licenza a mercati senza sapere dove verranno pubblicati.
- Dichiara ogni paese servito dal tuo sito, app o prodotto. Puoi modificare l'elenco in qualsiasi momento dalla tua dashboard; una modifica riporta il tuo account in revisione.
- Finché i tuoi mercati non sono approvati, la chiave funziona con limiti ridotti — la metà dell'assegnazione del piano Starter. Questo vale indipendentemente dal piano che hai.
- Possiamo approvare solo alcuni dei paesi che hai richiesto. La lista approvata, non quella richiesta, è ciò che la tua licenza copre.
- Pubblicare o ridistribuire i nostri dati in un mercato non dichiarato, o rivenderli come feed di dati concorrente, viola questi termini e può sospendere la tua chiave senza preavviso.
- Alcuni piani sono offerti solo in regioni selezionate. La disponibilità dipende dai mercati che dichiari.
- L'accordo completo sono i Termini della Developer API. Prevalgono su questa sintesi; la versione vincolante è quella inglese.
Attualità dei dati
L'aggiornamento dei dati dipende dal tuo piano. Nella risposta non c'è alcun indicatore — tutti i piani restituiscono gli stessi campi, gli stessi tipi e la stessa struttura di risposta.
- Piani a pagamento — Student, Starter, Pro e Pro MAX: telemetria in tempo reale, senza ritardo.
- Piano gratuito Explorer: un'istantanea degli ultimi 15–30 minuti. Lo scarto esatto varia da richiesta a richiesta.
Una risposta ritardata non è mai un errore né un problema di quota: è una risposta completa e valida, con numeri meno recenti. Ripetere la richiesta non restituisce dati più recenti.
Se la tua applicazione ha bisogno di dati attuali, qualsiasi piano a pagamento restituisce telemetria in tempo reale.
Ottieni la tua chiave API gratuita
Aggiornato