Skip to main content
Menu
📰 Tienes noticias de la frontera? Envíalo a nuestra sección de noticias y obtén un backlink dofollow indexable + traducción gratuita a 24 idiomas: 1 artículo por semana es gratis. Enviar noticias fronterizas →

Documentación de la API

REST + JSON sobre HTTPS. Una URL base, una clave, envelopes predecibles.

Raw .md GitHub
URL basehttps://nakordoni.eu/api/v1/data/
FormatoJSON, UTF-8
AuthAuthorization: Bearer NKD-DEV-…
VersionadoVersionado en la ruta y por endpoint: /api/v1/… es estable; /api/v2/… sirve el comportamiento nuevo solo para los endpoints que han cambiado y recurre de forma transparente a v1 para el resto. Las respuestas de v1 no cambian nunca.

En esta página

Autenticación · Envelope de respuesta · Cuotas · Ejemplos de código · Excel / Power Query · ERP (BAS / 1C) · Servidor MCP · Atribución · Exportación de datos históricos · Lo que puedes crear
Productos Colas en frontera: Estado de la API · API Directorio de Puestos Fronterizos · API de colas fronterizas v2 · API de búsqueda de pasos fronterizos · API Cola Fronteriza en Vivo · Multi-Checkpoint API · API Puestos Alternativos · API de cola en vivo y frescura  ·  Pronósticos y estadísticas: API Pronóstico de Colas · API Estadísticas Horarias de Puestos · API «Mejor momento para cruzar»  ·  Combustible y ubicaciones: API Precios de Combustible UE · API de precios de combustible por ciudad · API Puntos de Interés para Conductores · API de tipos de cambio  ·  Planificación de viajes: API de planificación de rutas · API de Matriz de Viaje · API Prohibiciones de Circulación de Camiones · API Domingos Comerciales · API Calendario de Festivos  ·  Conductores y carreteras: API Condiciones de la Carretera · API Estadísticas Fronterizas de Transportistas de Autobús  ·  Asistente de IA: API Asistente de IA Fronterizo · API de asistente IA personalizado

Autenticación

Cada solicitud necesita tu clave API en la cabecera Authorization (recomendado) o como parámetro ?key=.

curl "https://nakordoni.eu/api/v1/data/queue?ppid=id_13" \
  -H "Authorization: Bearer NKD-DEV-XXXX-XXXX-XXXX"

Envelope de respuesta

{
  "ok": true,
  "api_version": "v1",
  "product": "queue",
  "attribution": "Data by nakordoni.eu",
  "data": { ... },
  "usage": { "limit": 1000, "used": 42, "reset": "2026-06-06T00:00:00Z" }
}

Los errores devuelven ok:false con error.code (missing_api_key, invalid_api_key, qps_exceeded, quota_exceeded, unknown_product, product_unavailable, bad_request, internal_error) y estado HTTP 401/403/404/429/500. Las cabeceras de límite de tasa X-Devapi-Limit y X-Devapi-Remaining se envían en cada respuesta medida.

Cuotas

ExplorerPay As You Grow
llamadas/día en las API de datos estándar1,00050,000
llamadas/día en las API de previsiones y estadísticas20010,000
QPS220

Los contadores diarios se reinician a medianoche UTC. Recibes un correo al 80% y al 100% de la cuota.

Ejemplos de código

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)

Trae datos en vivo de colas, previsiones o prohibiciones para camiones directamente a un libro con el conector JSON integrado de Power Query — sin código, con actualización programada. El mismo patrón de Headers funciona para cualquier producto de esta API — solo cambia la 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

Guarda la clave API dentro de la consulta M (Home → Advanced Editor), no en una celda de la hoja — Power Query bloquea una solicitud web construida a partir de otra consulta o celda ("Formula.Firewall") a menos que el nivel de privacidad esté establecido en Organizational.

Varios pasos fronterizos en una sola tabla (paneles de flota) — 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

Data → Refresh All en Excel, o una actualización programada en Power BI / Excel Online, mantiene los datos al día — sin código de sondeo (polling).

Integración con ERP (BAS / BAF y plataformas de la familia 1C)

BAS / BAF y las demás plataformas de la familia 1C pueden llamar a esta API directamente desde una tarea programada — HTTPConnection más ReadJSON, sin middleware ni servicios adicionales que alojar. El montaje más habitual mantiene al día un registro de información con los precios de los carburantes en la UE.

Actualizar un registro de información (precios de carburantes, todos los países en una llamada)

// 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;

Tres cosas que hay que acertar: pase New OpenSSLSecureConnection en el puerto 443 o la petición se caerá en TLS; llame a /api/v1/data/fuel sin el parámetro country para que una sola petición devuelva todos los países en lugar de una llamada por país; y compruebe ok antes de tocar data — los fallos vuelven como ok:false con un error.code, no como excepción. El ejemplo usa el juego de palabras clave en inglés de la plataforma; los equivalentes localizados (HTTPСоединение, ПрочитатьJSON, РегистрыСведений) se comportan igual.

Los precios de los carburantes cambian en origen una vez al día, así que una tarea programada una o dos veces al día basta y se queda muy por debajo de la cuota gratuita Explorer. Los datos de cola en directo (queue, multi, border) cambian cada pocos minutos: consúltelos a su propio ritmo y use multi para leer hasta 20 pasos fronterizos en una sola petición en vez de en un bucle.

Servidor MCP

¿Prefieres la llamada a herramientas en lugar de REST? Ejecutamos un servidor MCP real (transporte Streamable HTTP) que expone un subconjunto seguro, de solo lectura, de esta API como herramientas MCP — la misma clave API, la misma cuota, solo un transporte diferente.

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

Configuración del cliente (Claude Desktop / Claude Code):

{
  "mcpServers": {
    "nakordoni": {
      "url": "https://nakordoni.eu/mcp",
      "headers": { "Authorization": "Bearer NKD-DEV-XXXX-XXXX-XXXX" }
    }
  }
}

Productos

All systems operational Checked 2026-08-06T03:15:10Z · Live JSON: GET /api/v1/data/status (no key) · full status page

Elige un endpoint para ver su referencia completa, parámetros, versiones y un sandbox en vivo.

Estándar utiliza la cuota de datos estándar  ·  Pesado utiliza la cuota de pronósticos y estadísticas — ver Cuotas

Colas en frontera

Estado de la API Estándar

Estado en tiempo real de cada producto de la Developer API: en línea / degradado / sin conexión, latencia de respuesta y hora de …

API Directorio de Puestos Fronterizos EstándarOnline

Directorio de todos los puestos fronterizos monitorizados: ID, nombres, países, coordenadas y estado. Úsalo para descubrir los va…

API de colas fronterizas PesadoOnlinev2

Todos los pasos en una frontera dada + tipo de vehículo en una sola llamada. Soporta destino único, lista separada por comas o "a…

API de búsqueda de pasos fronterizos EstándarOnline

Encuentre los PPID de los pasos fronterizos por nombre en cualquier idioma. Devuelve todos los PPID de esa ubicación agrupados po…

API Cola Fronteriza en Vivo PesadoOnline

Colas en tiempo real, estimación del tiempo de espera y estado para cualquier paso fronterizo monitoreado. Incluye un bloque snap…

Multi-Checkpoint API PesadoOnline

Obtenga el estado de la cola y la actualización de datos para hasta 20 puntos de control en una única solicitud. La cuota se calc…

API Puestos Alternativos EstándarOnline

Puestos alternativos cercanos en la misma frontera con las colas actuales y las diferencias de distancia.

API de cola en vivo y frescura EstándarOnline

Cuándo se actualizó por última vez un puesto, por qué fuente, y una valoración de frescura.

Pronósticos y estadísticas

API Pronóstico de Colas PesadoOnline

Pronóstico mediante ensemble de ML de los niveles de cola: horizontes de 24 horas y 7 días (168h) con intervalos de confianza. El…

API Estadísticas Horarias de Puestos PesadoOnline

Estadísticas históricas horarias de cola por puesto y fecha: 24 valores horarios, promedio/mín/máx diarios, horas pico y horas má…

API «Mejor momento para cruzar» EstándarOnline

Estadísticas de semana típica por puesto fronterizo: matriz 7×24 día-de-semana×hora (mediana + banda p25/p75), día más tranquilo/…

Combustible y ubicaciones

API Precios de Combustible UE EstándarOnline

Precios medios de gasolina/diésel/GLP en los países de la UE más las estaciones más cercanas, agregados a partir de fuentes nacio…

API de precios de combustible por ciudad EstándarOnline

Resumen de precios de combustible por ciudad: la estación más barata y media de las 5 más económicas.

API Puntos de Interés para Conductores EstándarOnline

Aparcamientos para camiones (14k+), duchas gratuitas, servicios y supermercados por toda Europa con coordenadas.

API de tipos de cambio EstándarOnline

Tipos de cambio basados en EUR para PLN, CZK, HUF, USD, GBP, CHF, NOK y UAH, fuente Frankfurter (ECB), caché 6 horas. Sin parámet…

Planificación de viajes

API de planificación de rutas PesadoOnline

Un plan puerta a puerta para un viaje fronterizo: la ruta, los pasos fronterizos que hay en ella con la cola en directo o una pre…

API de Matriz de Viaje PesadoOnline

Tiempo de viaje + cola fronteriza para todos los pasos desde un punto de origen.

API Prohibiciones de Circulación de Camiones EstándarOnline

Restricciones europeas a la circulación de camiones por país y fecha, incluidas las prohibiciones estacionales y de días festivos.

API Domingos Comerciales EstándarOnline

Normativa sobre la apertura comercial dominical y próximos domingos comerciales por país regulado de la UE.

API Calendario de Festivos EstándarOnline

Official public holidays per European country — dates, local names and type, each country's full holiday list included. Backed by…

Conductores y carreteras

API Condiciones de la Carretera EstándarOnline

Informes aprobados sobre el estado de la carretera cerca de las fronteras y en los corredores principales: baches, obras, cierres…

API Estadísticas Fronterizas de Transportistas de Autobús EstándarOnline

Rendimiento de cruce de frontera por transportista de autobús: cruces, minutos de espera promedio/mediano/mín/máx — elaborados a …

Asistente de IA

API Asistente de IA Fronterizo PesadoOnline

Hazle a nuestro asistente de IA de producción cualquier pregunta sobre el cruce de fronteras (colas, pronósticos, normas, combust…

API de asistente IA personalizado PesadoOnline

Tu propio asistente de IA, basado en TU contenido y en NUESTROS datos fronterizos en vivo. Danos tus archivos markdown o indícano…

Otros

Advanced Wait Time API

Exportación de datos históricos

Los desarrolladores aprobados pueden descargar el histórico publicado de colas en frontera, promediado por hora, de hasta 5 pasos fronterizos (ventana móvil de hasta 90 días) en CSV, NDJSON o JSON comprimidos con gzip. Es una función solo del portal — NO un endpoint de la API; las exportaciones se crean y se descargan desde la pestaña «Exportación de datos» de tu cuenta.

El acceso se concede a petición: abre un ticket de Data indicándonos qué pasos fronterizos, el intervalo de fechas y el uso previsto. Una vez aprobado, la pestaña Exportación de datos aparece en tu cuenta. Límite por defecto: 1 exportación al día, con hasta 5 pasos cada una — pídenos ampliarlo.

Campos — una fila por paso fronterizo y hora UTC

ParámetroDescripción
ppidID del paso fronterizo
checkpoint_nameNombre del paso fronterizo
hour_utcFranja horaria, ISO-8601 UTC
directionp. ej. UA->PL
vehicle_typecar / bus / truck / pedestrian
avg_queue_lengthLongitud media horaria de la cola
avg_wait_minutesEspera media horaria; null cuando un paso no tiene un feed oficial de espera
sample_countNúmero de observaciones en la hora

Solo se exportan datos publicados, que han pasado nuestros controles de anomalías y calidad (nada de datos brutos por reporte). Todas las marcas de tiempo están en UTC. Los archivos se conservan 10 días.

Procedencia: cada archivo incorpora en su cabecera una huella firmada (sha256 + HMAC), de modo que cualquier copia puede confirmarse después como datos auténticos de nakordoni.eu y comprobarse frente a manipulaciones — incluso tras la descarga.

# 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

Lo que puedes crear

Los mismos productos de datos generan los elementos visuales de nakordoni.eu — gráficos de previsión semanal, perfiles horarios de colas, tarjetas de estado en tiempo real. Una muestra de lo que contienen las API de previsiones y estadísticas:

7-day border queue forecast chart built from the Forecast API
Previsión semanal + perfil horario del día más concurrido — Forecast API (prediction_steps=168 / 24)
Hourly queue statistics chart built from the Statistics API
Gráfico horario de colas por paso fronterizo — Statistics API (stats?ppid=…&compare=1)

Atribución

Las integraciones del plan Explorer deben mostrar un enlace visible "Data by nakordoni.eu" allí donde se muestren los datos. Es lo que mantiene gratis el plan gratuito.

El código exacto

Copie este fragmento tal cual. El enlace debe seguir siendo indexable: un <a href> HTML simple que los buscadores puedan seguir — NO añada rel="nofollow" ni rel="sponsored", no lo renderice solo con JavaScript ni lo oculte con CSS.

<a href="https://nakordoni.eu/" title="Border queues, forecasts &amp; statistics">Data by nakordoni.eu</a>

Variante compacta en letra pequeña (p. ej., bajo un gráfico o widget):

<p style="font-size:12px;margin:4px 0">
  Data by <a href="https://nakordoni.eu/">nakordoni.eu</a>
</p>

Puede enlazar a su versión de idioma, p. ej. https://nakordoni.eu/es/ — cuenta cualquier enlace indexable a nakordoni.eu. El texto ancla "Data by nakordoni.eu" debe permanecer en inglés.

Dónde colocarlo

Verificamos periódicamente la atribución en la "página de uso de datos" indicada al registrarse. La atribución ausente o desindexada en el plan Explorer conlleva primero un recordatorio y luego la suspensión de la clave. Los clientes de Pay As You Grow pueden omitirla.

Consigue tu clave API gratuita