API sənədləri
HTTPS üzərindən REST + JSON. Bir baza URL, bir açar, proqnozlaşdırıla bilən strukturlar.
| Baza URL | https://nakordoni.eu/api/v1/data/ |
|---|---|
| Format | JSON, UTF-8 |
| Autentifikasiya | Authorization: Bearer NKD-DEV-… |
| Versiyalama | Yol üzrə versiyalanma və hər son nöqtə ayrılıqda: /api/v1/… sabitdir; /api/v2/… yeni davranışı yalnız dəyişmiş son nöqtələr üçün verir, qalanlarında isə şəffaf şəkildə v1-ə qayıdır. v1 cavabları heç vaxt dəyişmir. |
Bu səhifədə
Autentifikasiya
Hər sorğu API açarınızı Authorization başlığında (tövsiyə olunur) və ya ?key= parametri kimi tələb edir.
curl "https://nakordoni.eu/api/v1/data/queue?ppid=id_13" \ -H "Authorization: Bearer NKD-DEV-XXXX-XXXX-XXXX"
Cavab strukturu
{
"ok": true,
"api_version": "v1",
"product": "queue",
"attribution": "Data by nakordoni.eu",
"data": { ... },
"usage": { "limit": 1000, "used": 42, "reset": "2026-06-06T00:00:00Z" }
}
Xətalar ok:false qaytarır, error.code ilə (missing_api_key, invalid_api_key, qps_exceeded, quota_exceeded, unknown_product, product_unavailable, bad_request, internal_error) və HTTP statusu 401/403/404/429/500. X-Devapi-Limit və X-Devapi-Remaining başlıqları hər ölçülən cavabla göndərilir.
Kvotalar
| Explorer | Pay As You Grow | |
|---|---|---|
| sorğu/gün standart məlumat API-lərində | 1,000 | 50,000 |
| sorğu/gün proqnoz və statistika API-lərində | 200 | 10,000 |
| QPS | 2 | 20 |
Günlük sayğaclar UTC gecə yarısı sıfırlanır. Kvotanın 80% və 100%-də e-poçt alırsınız.
Kod nümunələri
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)
Power Query-nin daxili JSON konnektoru ilə növbə, proqnoz və ya yük maşınları üçün qadağa məlumatlarını birbaşa iş kitabına alın — koddan istifadə etmədən, cədvəl üzrə yenilənən. Eyni Headers sxemi bu API-dəki hər hansı məhsul üçün işləyir — sadəcə URL-i dəyişdirin.
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
API açarını vərəq xanasında deyil, M sorğusunun daxilində saxlayın (Home → Advanced Editor) — məxfilik səviyyəsi Organizational olaraq təyin edilməyibsə, Power Query başqa sorğudan və ya xanadan qurulmuş veb sorğusunu bloklayır ("Formula.Firewall").
Bir cədvəldə bir neçə sərhəd keçid məntəqəsi (donanma paneli) — e.g. every truck crossing UA→EU (crossing_type=9):
let
ApiKey = "NKD-DEV-XXXX-XXXX-XXXX",
Source = Json.Document(Web.Contents("https://nakordoni.eu/api/v1/data/border/1/all/9",
[Headers = [Authorization = "Bearer " & ApiKey]])),
checkpoints = Source[data],
AsTable = Table.FromRecords(checkpoints)
in
AsTable
Excel-də Data → Refresh All və ya Power BI / Excel Online-da planlaşdırılmış yeniləmə məlumatları aktual saxlayır — polling kodu tələb olunmur.
ERP inteqrasiyası (BAS / BAF və 1C ailəsi platformaları)
BAS / BAF və 1C ailəsinin digər platformaları bu API-yə birbaşa planlaşdırılmış tapşırıqdan müraciət edə bilər — HTTPConnection və ReadJSON, aralıq xidmət olmadan. Ən çox rast gəlinən ssenari Aİ yanacaq qiymətlərinin məlumat registrini güncəl saxlamaqdır.
Məlumat registrinin yenilənməsi (yanacaq qiymətləri, bütün ölkələr bir sorğuda)
// 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;
Üç şeyi düzgün edin: 443 portuna New OpenSSLSecureConnection ötürün, əks halda sorğu TLS-də uğursuz olur; /api/v1/data/fuel-i country parametri olmadan çağırın ki, bir sorğu hər ölkə üçün ayrıca çağırış əvəzinə hamısını qaytarsın; və data-ya toxunmadan əvvəl ok dəyərini yoxlayın — xətalar istisna kimi deyil, error.code ilə ok:false şəklində gəlir. Nümunədə platformanın ingiliscə açar sözlər dəsti istifadə olunub; lokallaşdırılmış qarşılıqları (HTTPСоединение, ПрочитатьJSON, РегистрыСведений) eyni işləyir.
Mənbələrdə yanacaq qiymətləri gündə bir dəfə dəyişir, ona görə gündə bir-iki dəfə işləyən planlaşdırılmış tapşırıq kifayətdir və pulsuz Explorer kvotasının çox içərisində qalır. Növbənin canlı məlumatları (queue, multi, border) hər bir neçə dəqiqədən bir dəyişir — onları öz cədvəlinizlə sorğulayın və dövr əvəzinə multi ilə bir sorğuda 20-yə qədər buraxılış məntəqəsini oxuyun.
MCP server
REST əvəzinə alət çağırışını üstün tutursunuz? Biz bu API-nin təhlükəsiz, yalnız oxumaq üçün olan alt dəstini MCP alətləri kimi təqdim edən əsl MCP server (Streamable HTTP nəqliyyatı) işlədirik — eyni API açarı, eyni kvota, sadəcə fərqli nəqliyyat.
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
Müştəri konfiqurasiyası (Claude Desktop / Claude Code):
{
"mcpServers": {
"nakordoni": {
"url": "https://nakordoni.eu/mcp",
"headers": { "Authorization": "Bearer NKD-DEV-XXXX-XXXX-XXXX" }
}
}
}
Məhsullar
Tam arayışı, parametrləri, versiyaları və canlı sınaq mühitini görmək üçün son nöqtə seçin.
Standart standart məlumat kvotasından istifadə edir · Ağır proqnoz və statistika kvotasından istifadə edir — bax Kvotalar
Sərhəd növbələri
Hər Developer API məhsulunun canlı vəziyyəti: onlayn / deqradasiyaya uğramış / oflayn, cavab gecikmesi və son yoxlama vaxtı. İcti…
Bütün monitorinq edilən sərhəd nəzarət-buraxılış məntəqələrinin kataloqu: identifikatorlar, adlar, ölkələr, koordinatlar və statu…
Müəyyən bir sərhəddəki bütün keçid məntəqələri + nəqliyyat növü bir sorğuda. Tək bir təyinat, vergüllə ayrılmış siyahı və ya "all…
İstənilən dildə adı ilə keçid məntəqəsinin PPID-lərini tapın. Həmin yer üçün nəqliyyat növünə görə qruplaşdırılmış bütün PPID-lər…
Real vaxtda növbələr, gözləmə vaxtının qiymətləndirilməsi və istənilən keçid məntəqəsinin statusu. Snapshot bloku daxildir: cari …
Sıra vəziyyətini və məlumat təzəliyini bir tək sorğuda 20-yə qədər nəzarət nöqtəsi üçün alın. Kvota ⌈(N PPID × alt-məhsullar) / 2…
Eyni sərhəddə yaxınlıqdakı alternativ nəzarət məntəqələri cari növbələr və məsafə fərqləri ilə.
Nəzarət məntəqəsinin son dəfə nə vaxt, hansı mənbədən yeniləndiyi və təzəlik reytinqi.
Proqnozlar və Statistika
Növbə səviyyələrinin ML ansambl proqnozu: etibarlılıq hüdudları ilə 24 saatlıq və 7 günlük (168s) üfüqlər. nakordoni.eu proqnozla…
Nəzarət məntəqəsi və tarix üzrə saatlıq tarixi növbə statistikası: 24 saatlıq dəyər, günlük orta/min/maks, pik və ən sakit saatla…
Nəzarət nöqtəsi üzrə tipik həftə statistikası: 7×24 matris həftə-günü×saat (mediana + p25/p75 zolağı), ən sakit/sıx gün, ən yaxşı…
Yanacaq və Yerlər
Aİ ölkələri üzrə benzin/dizel/maye qaz orta qiymətləri, həmçinin rəsmi milli mənbələrdən aqreqasiya edilmiş ən yaxın stansiyalar.
Şəhərlər üzrə yanacaq qiymətləri: ən ucuz stansiya və 5 ən ucuz stansiya ortalama.
Yük maşını dayanacaqları (14min+), pulsuz duşlar, xidmətlər və supermarketlər bütün Avropa üzrə koordinatları ilə.
PLN, CZK, HUF, USD, GBP, CHF, NOK və UAH üçün EUR əsaslı məzənnələr, mənbə Frankfurter (ECB), keş 6 saat. Parametrsiz — həmişə ta…
Səyahət Planlaması
Sərhəd səfəri üçün qapıdan-qapıya plan: marşrut, onun üzərindəki keçid məntəqələri canlı növbə və ya gəliş vaxtınıza proqnozla, h…
Verilən başlanğıc nöqtəsindən bütün keçid məntəqələri üçün yol müddəti və sərhəd növbəsi.
Mövsümi və bayram qadağaları daxil olmaqla, ölkə və tarix üzrə Avropa yük maşınlarının hərəkət məhdudiyyətləri.
Bazar günü pərakəndə açılış qaydaları və hər tənzimlənən Aİ ölkəsi üzrə qarşıdan gələn ticarət bazar günləri.
Official public holidays per European country — dates, local names and type, each country's full holiday list included. Backed by…
Sürücülər və Yollar
Sərhədlər yaxınlığında və əsas dəhlizlərdə təsdiqlənmiş yol şəraiti hesabatları: çuxurlar, yol işləri, bağlanmalar, buz, təhlükəl…
Avtobus daşıyıcısı üzrə sərhəd keçidi göstəriciləri: keçidlər, orta/median/min/maks gözləmə dəqiqələri — öz nömrə ilə uyğunlaşdır…
AI Köməkçisi
Bizim istehsalat AI köməkçimizə hər hansı sərhəd keçidi sualını verin (növbələr, proqnozlar, qaydalar, yanacaq, marşrutlar) və na…
Öz AI köməkçiniz — SİZİN məzmununuz və BİZİM canlı sərhəd məlumatlarımız əsasında cavab verir. Bizə markdown fayllarınızı verin v…
Digər
Tarixi məlumatların ixracı
Təsdiqlənmiş developerlər 5-ə qədər keçid məntəqəsi üzrə saatlıq ortalanmış, dərc olunmuş sərhəd növbəsi tarixçəsini (90 günə qədər sürüşən pəncərə) gzip-lənmiş CSV, NDJSON və ya JSON kimi endirə bilər. Bu, yalnız portala aid funksiyadır — API son nöqtəsi DEYİL; ixracları hesabınızdakı "Data ixracı" bölməsində qurur və endirirsiniz.
Giriş sorğu əsasında verilir: hansı keçid məntəqələri, hansı zaman aralığı və məlumatı nə üçün istifadə edəcəyinizi göstərən Data bileti açın. Təsdiqləndikdən sonra hesabınızda Data ixracı bölməsi görünür. Standart limit: gündə 1 ixrac, hər birində 5-ə qədər keçid məntəqəsi — artırmağımızı istəyin.
Sahələr — hər keçid məntəqəsi və hər UTC saatı üçün bir sətir
| Parametr | Təsvir |
|---|---|
ppid | Keçid məntəqəsinin id-si |
checkpoint_name | Keçid məntəqəsinin adı |
hour_utc | Saat intervalı, ISO-8601 UTC |
direction | məs. UA->PL |
vehicle_type | avtomobil / avtobus / yük maşını / piyada |
avg_queue_length | Saatlıq orta növbə uzunluğu |
avg_wait_minutes | Saatlıq orta gözləmə; rəsmi gözləmə axını olmayan keçid məntəqələrində null |
sample_count | Həmin saatdakı müşahidələrin sayı |
Məlumatlar yalnız dərc olunmuşlardır və ixracdan əvvəl anomaliya / məlumat keyfiyyəti yoxlamalarımızdan keçir (xam hesabat məlumatı yoxdur). Bütün zaman möhürləri UTC-dir. Fayllar 10 gün saxlanılır.
Mənşə: hər fayl başlığına imzalanmış barmaq izi (sha256 + HMAC) yerləşdirir, beləliklə istənilən nüsxənin əsl nakordoni.eu məlumatı olduğu sonradan təsdiqlənə və dəyişdirilib-dəyişdirilmədiyi yoxlanıla bilər — hətta endirildikdən sonra da.
# 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
Nə qura bilərsiniz
Eyni məlumat məhsulları nakordoni.eu-dakı vizualları yaradır — həftəlik proqnoz qrafikləri, saatlıq növbə profilləri, canlı status kartları. Proqnoz və statistika API-lərinin tərkibindən bir nümunə:
İstinad
Explorer planı inteqrasiyaları məlumatın göstərildiyi hər yerdə görünən "Data by nakordoni.eu" keçidi göstərməlidir. Pulsuz planı pulsuz saxlayan budur.
Dəqiq kod
Bu fraqmenti olduğu kimi kopyalayın. Keçid indekslənə bilən qalmalıdır: axtarış sistemlərinin izləyə biləcəyi sadə HTML <a href> — rel="nofollow" və ya rel="sponsored" ƏLAVƏ ETMƏYİN, yalnız JavaScript ilə göstərməyin və CSS ilə gizlətməyin.
<a href="https://nakordoni.eu/" title="Border queues, forecasts & statistics">Data by nakordoni.eu</a>
Kompakt xırda variant (məs., qrafik və ya vidcet altında):
<p style="font-size:12px;margin:4px 0"> Data by <a href="https://nakordoni.eu/">nakordoni.eu</a> </p>
Öz dil versiyanıza keçid verə bilərsiniz, məs. https://nakordoni.eu/az/ — nakordoni.eu-ya istənilən indekslənə bilən keçid sayılır. "Data by nakordoni.eu" anker mətni ingiliscə qalmalıdır.
Haraya yerləşdirilməli
- Məlumat blokunun (cədvəl, qrafik, vidcet, cavab) dərhal yanında və ya altında — eyni ekranda, əlavə kliklər olmadan görünən.
- Məlumatlarımızın göründüyü hər səhifədə və ya tətbiq ekranında — yalnız "haqqımızda" səhifəsində deyil.
- Oxuna bilən ölçü və kontrast: ən azı ~11px, gizlədilməmiş, yığılmamış, fon rəngində deyil.
- HTML keçidləri olmayan nativ mobil tətbiqlər: məlumat ekranında "Data by nakordoni.eu" mətnini göstərin və kliklənə bilən keçidi məlumat ekranına qoyun.
Qeydiyyatda göstərdiyiniz "məlumatların istifadə olunduğu səhifədə" atribusiyanı vaxtaşırı yoxlayırıq. Explorer planında atribusiyanın olmaması və ya deindeksasiyası əvvəlcə xatırlatmaya, sonra açarın dayandırılmasına gətirir. Pay As You Grow müştəriləri atribusiyanı buraxa bilər.