Reportar un problema

¿Cuál es el problema?

No se pudo adjuntar la captura — envíalo sin ella

OpenVan.camp Public API

Datos abiertos sobre precios de combustible, tipos de cambio y eventos vanlife. Uso gratuito en tus apps, bots y artículos bajo CC BY 4.0.

Sin clave API

Llama a cualquier endpoint directamente — sin registro ni cabecera de autenticación

100% gratis

142 países, actualizaciones semanales, licencia CC BY 4.0

CORS habilitado

Funciona directamente desde el navegador, sin proxy de servidor

Hecho con OpenVan

Apps vanlife, rastreadores de precios de combustible, planificadores de rutas y herramientas EV de una decena de países ya funcionan con nuestros datos abiertos.

98
apps y sitios
279 800+
solicitudes API / mes
4
motores de IA leen los datos
6
conjuntos de datos abiertos

Quién ya lo usa

Una selección — apps de combustible, planificadores de rutas, paneles EV y de flotas.

MyDiodia Rutas AutoCost Costes Scopri24 Herramientas
Croatia Toll Calculator Rutas
EvBlue VE
Scotlynn Fleet Flota
FuelWatch Combustible
Carburant Belgique Combustible
MileFuel Combustible
ExpenseOS Costes
Leído por buscadores con IA
ChatGPT Perplexity Claude Gemini

Vemos a ChatGPT, Perplexity, Claude y Gemini consultar los datos de OpenVan — los datos de tu integración también pueden aparecer en sus respuestas.

¿Usas nuestra API?

Añade ?source=tu-dominio a tus llamadas — y aparecerás en esta vitrina.

Licencia CC BY 4.0 — Puede usar, compartir y adaptar estos datos en cualquier formato, siempre que cite a OpenVan.camp como fuente. creativecommons.org →
Para agentes de IA y herramientas LLM
  • Sin clave API. Llama a cualquier endpoint directamente — sin registro ni cabecera de autenticación.
  • CORS habilitado. Los endpoints pueden llamarse directamente desde el navegador.
  • Formato de respuesta: siempre { "success": true, "data": {...} }
  • Caché: precios de combustible TTL 6 h · tipos de cambio TTL 25 h · no consultes más de una vez cada 10 min
  • Especificación OpenAPI 3.0 completa: /docs.openapi · ejemplos en GitHub
  • Atribución: añade ?source=your-app.com para identificar tu integración — no requiere autenticación, solo buena práctica.

Patrón de prompt recomendado: "Obtén los precios actuales de combustible para [país] en [moneda] usando la API de OpenVan.camp en https://openvan.camp/api/fuel/prices"

Endpoints disponibles

GET /api/fuel/prices 142 países

Precios actuales de combustible para 142 países. La lista de claves de precio se genera desde el contrato actual de la API. Actualizados semanalmente desde fuentes gubernamentales oficiales (EU Oil Bulletin, Statistics Norway, EIA, ANP, NRCan y otros). Caché 6 horas. Datos de combustible actualizados el: 25 julio 2026.

Current price keys: gasoline_regular, gasoline, gasoline_premium, gasoline_super, diesel_regular, diesel, diesel_premium, lpg, cng, e85, kerosene, premium

curl https://openvan.camp/api/fuel/prices

Ejemplo de respuesta:

{
    "success": true,
    "data": {
        "DE": {
            "country_code": "DE",
            "country_name": "Germany",
            "region": "europe",
            "currency": "EUR",
            "local_currency": "EUR",
            "unit": "liter",
            "prices": {
                "gasoline_regular": null,
                "gasoline": 2.1649,
                "gasoline_premium": 2.2106,
                "gasoline_super": null,
                "diesel_regular": null,
                "diesel": 2.1726,
                "diesel_premium": 2.4319,
                "lpg": 1.1065,
                "cng": null,
                "e85": null,
                "kerosene": null,
                "premium": 2.2106
            },
            "price_changes": {
                "gasoline_regular": null,
                "gasoline": -0.005,
                "gasoline_premium": -0.0824,
                "gasoline_super": null,
                "diesel_regular": null,
                "diesel": 0.0401,
                "diesel_premium": -0.0564,
                "lpg": -0.0021,
                "cng": null,
                "e85": null,
                "kerosene": null,
                "premium": null
            },
            "fetched_at": "2026-07-25T11:19:58+03:00",
            "sources": [
                "EU Weekly Oil Bulletin",
                "clever-tanken.de (Premium Diesel)",
                "Tankerkoenig (tankerkoenig.de)",
                "Cargopedia.net",
                "Fuelo.net",
                "BenzinpreisAktuell.de"
            ],
            "sources_count": 4,
            "is_excluded": false
        }
    },
    "meta": {
        "total_countries": 142,
        "updated_at": "2026-07-25 11:19:58",
        "cache_ttl_hours": 6
    }
}
GET /api/currency/rates 150+ monedas

Tipos de cambio para 150+ monedas en relación al EUR. Obtenidos de múltiples APIs de código abierto con fallback automático. Caché 1 hora.

curl https://openvan.camp/api/currency/rates

Ejemplo de respuesta (basado en EUR, todos los tipos relativos a EUR=1):

{
  "success": true,
  "rates": { "EUR": 1, "USD": 1.08, "GBP": 0.85, "RUB": 98.5, "TRY": 35.2, "GEL": 2.95, "KZT": 520 },
  "cached": true,
  "updated_at": "2026-03-28T07:00:00+00:00"
}
GET /api/vanbasket/countries 90+ países

VanBasket Food Price Index — cómo de cara es la comida respecto a la media mundial (Mundo = 100). Basado en World Bank ICP 2021, ajustado con IMF CPI.

# All countries
curl https://openvan.camp/api/vanbasket/countries

# Compare two countries
curl "https://openvan.camp/api/vanbasket/compare?from=DE&to=TR"

# Single country with history
curl https://openvan.camp/api/vanbasket/countries/DE
GET /api/visa/check 39.601 pares

Normas de visado y frontera: cuánto tiempo puedes permanecer para cualquier par pasaporte × destino, cómo se cuentan los días (por entrada o en una ventana móvil), si un visa run reinicia el contador — además de las normas de importación temporal de vehículos. Cada respuesta indica su confianza, su fuente y la capa de la que procede.

# One pair: stay rule, entry mode, shared-counter zone, vehicle rule
curl "https://openvan.camp/api/visa/check?passport=RU&destination=TR"

# All 199 destinations for one passport
curl "https://openvan.camp/api/visa/passport/DE?mode=visa_free"

# Compact payload for colouring a world map
curl https://openvan.camp/api/visa/map/US

# Temporary vehicle import rules
curl https://openvan.camp/api/visa/vehicle/georgia

# Passport ranking and the change log
curl "https://openvan.camp/api/visa/rank?limit=10"
curl "https://openvan.camp/api/visa/history?subject_key=RU%3ETR"
confidence: low significa que el número de días es correcto pero la forma de contarlos es una suposición — verifícalo en la frontera. Datos de referencia, no asesoramiento legal.
Parámetros: passport destination weight plate mode locale limit Documentación completa
GET /api/events eventos vanlife

Lista paginada de eventos vanlife — exposiciones, festivales, quedadas, road trips. Filtra por estado, tipo, país. Nombres localizados en 7 idiomas.

# Upcoming events in Germany
curl "https://openvan.camp/api/events?country=DE&status=upcoming"

# Search by name, Russian locale
curl "https://openvan.camp/api/events?search=Adventure+Northside&locale=ru"

# Event details + linked source articles
curl "https://openvan.camp/api/event/adventure-northside-2026?locale=en"
curl "https://openvan.camp/api/event/adventure-northside-2026/articles?locale=en"
locale — uno de en ru de fr es pt tr. Por defecto: en. Una configuración regional desconocida se reemplaza silenciosamente por en. alternativa de articles: si ningún artículo coincide con la configuración regional solicitada, se devuelven todos los artículos de origen.
Parámetros: locale status type country search page limit Docs completos →
GET /api/stories 7 idiomas

Noticias vanlife agregadas de 200+ editores y traducidas a 7 idiomas. Cada historia incluye sources — los artículos originales de los editores con enlaces directos, nombres de fuente, fechas de publicación y códigos de idioma.

# Latest stories in English
curl "https://openvan.camp/api/stories?locale=en"

# Filter by category and country
curl "https://openvan.camp/api/stories?locale=de&category=festival&country=DE"

# Full story with all source articles
curl "https://openvan.camp/api/story/adac-camper-des-jahres-der-wettbewerb-fuer?locale=en"

Ejemplo de respuesta para /api/story/{slug}:

{
  "slug": "adac-camper-des-jahres-der-wettbewerb-fuer",
  "title": "ADAC launches 'Camper of the Year' competition for motorhome drivers",
  "summary": "ADAC is holding the national 'Camper des Jahres 2026' competition for motorhome owners...",
  "image_url": "https://...",
  "category": { "slug": "festival", "name": "Festivals" },
  "countries": [{ "code": "de", "name": "Germany", "flag_emoji": "🇩🇪" }],
  "first_published_at": "2026-01-22T11:00:00+03:00",
  "last_updated_at": "2026-07-04T04:16:47+03:00",
  "articles_count": 5,
  "url": "https://openvan.camp/en/news/festival/adac-camper-des-jahres-der-wettbewerb-fuer",
  "sources": [
    {
      "title": "Nürburgring: Bundesweiter Wettbewerb «Camper des Jahres»",
      "original_url": "https://www.blick-aktuell.de/Berichte/...",
      "source_name": "BLICK aktuell",
      "published_at": "2026-04-30T09:24:20+03:00",
      "language": "de",
      "image_url": "https://..."
    }
  ]
}
locale — uno de en ru de fr es pt tr. Por defecto: en. Afecta a title, summary, y category.name. sources[].language es siempre el idioma original del editor, independiente de la configuración regional.
Parámetros: locale category country search page limit Docs completos →

Inicio rápido

JavaScript — el diésel más barato de Europa

const { data } = await fetch("https://openvan.camp/api/fuel/prices").then(r => r.json());

const cheapest = Object.values(data)
  .filter(c => c.region === "europe" && c.prices.diesel !== null)
  .sort((a, b) => a.prices.diesel - b.prices.diesel)
  .slice(0, 5);

cheapest.forEach(c => console.log(`${c.country_name}: ${c.prices.diesel} ${c.currency}/L`));

JavaScript — conversión a USD con tipos de cambio

const [{ data }, { rates }] = await Promise.all([
  fetch("https://openvan.camp/api/fuel/prices").then(r => r.json()),
  fetch("https://openvan.camp/api/currency/rates").then(r => r.json()),
]);

// Convert any price to USD/liter
function toUSD(price, currency, unit) {
  let usd = (price / rates[currency]) * rates["USD"];
  return unit === "gallon" ? usd / 3.78541 : usd;
}

const de = data["DE"];
console.log(`Germany diesel: $${toUSD(de.prices.diesel, de.currency, de.unit).toFixed(3)}/L`);

Python — países con GLP

import requests

data = requests.get("https://openvan.camp/api/fuel/prices").json()["data"]

lpg = [(v["country_name"], v["prices"]["lpg"], v["currency"])
       for v in data.values() if v["prices"]["lpg"] is not None]

for name, price, currency in sorted(lpg, key=lambda x: x[1])[:10]:
    print(f"{name}: {price} {currency}/L")

Más ejemplos (bash, pandas, widget): GitHub →

SDK de JavaScript / TypeScript

SDK oficial tipado — sin configuración, funciona en Node.js ≥ 18, navegador, Cloudflare Workers, Deno, Bun. No requiere clave API.

Instalación

npm install @openvancamp/sdk
# or: pnpm add @openvancamp/sdk

Inicio rápido (TypeScript / ESM)

import { OpenVan } from "@openvancamp/sdk";

const ov = new OpenVan();

// Cheapest diesel in Europe (top 5, EUR-normalized)
const top5 = await ov.fuel.cheapest("diesel", 5);
top5.forEach(c => console.log(c.country_name, c.prices.diesel, c.currency));

// Is Portugal cheaper than Germany for van living?
const comp = await ov.basket.compare("DE", "PT");
console.log(`Portugal is ${Math.abs(comp.diff_percent)}% cheaper`);

// Vanlife weather suitability — top 10 countries right now
const weather = await ov.weather.top({ limit: 10 });

Atribución

Al usar nuestros datos, incluye una atribución visible. Aquí tienes un snippet listo para usar:

Data source: <a href="https://openvan.camp/">OpenVan.camp</a> (CC BY 4.0)

Identifica tu app — añade ?source=yoursite.com

Pasa source como parámetro de consulta con tu dominio o nombre de app. Sin registro — nos ayuda a entender cómo se usan los datos y reconocer proyectos activos. El valor se devuelve en cada respuesta en _attribution.your_source.

curl "https://openvan.camp/api/fuel/prices?source=myapp.com"

# Response includes:
# "_attribution": {
#   "data_source": "openvan.camp",
#   "license": "CC BY 4.0",
#   "attribution_url": "https://openvan.camp/",
#   "attribution_html": "Data: <a href=\"https://openvan.camp/\">OpenVan.camp</a> (CC BY 4.0)",
#   "your_source": "myapp.com"
# }

Instalar OpenVan.camp

Obtén acceso rápido y lectura sin conexión.

Instalar en iOS

  1. 1 Toca Compartir en Safari.
  2. 2 Elige "Añadir a inicio".
  3. 3 Confirma tocando Agregar.

Ya instalado

La aplicación ya está instalada en este dispositivo.

Instalar desde el menú

Usa el menú de tu navegador para instalar o agregar a la pantalla de inicio.

→ Ver glosario