Сообщить о проблеме

В чём проблема?

Не удалось приложить скриншот — отправьте без него

OpenVan.camp Public API

Открытые данные о ценах на топливо, курсах валют и ванлайф-событиях. Бесплатно для использования в приложениях, ботах и статьях по лицензии CC BY 4.0.

Без API-ключа

Вызывайте любой эндпоинт напрямую — без регистрации и заголовков авторизации

100% бесплатно

169 стран, еженедельные обновления, лицензия CC BY 4.0

CORS включён

Работает прямо из браузера, серверный прокси не нужен

Уже строят на OpenVan API

Топливные приложения, тревел-планировщики, EV-сервисы и флит-дашборды из десятка стран уже работают на наших открытых данных.

153
приложений и сайтов
538 400+
запросов к API / мес
4
ИИ-движка читают данные
6
открытых датасета

Кто уже использует

Выборка реальных интеграций — топливные приложения, тревел-планировщики, EV- и флит-дашборды.

GR MyDiodia Маршруты AutoCost Расходы IT Scopri24 Инструменты
CZ Croatia Toll Calculator Маршруты
EvBlue Электро
US Scotlynn Fleet Автопарк
BR FuelWatch Топливо
BE Carburant Belgique Топливо
MileFuel Топливо
ExpenseOS Расходы
Данные читают ИИ-поисковики
ChatGPT Perplexity Claude Gemini

В логах видим, как ChatGPT, Perplexity, Claude и Gemini запрашивают данные OpenVan — данные вашей интеграции тоже могут попасть в их ответы.

Используете наш API?

Добавьте ?source=ваш-домен к запросам — и попадёте в эту витрину.

Лицензия CC BY 4.0 — вы можете свободно использовать, распространять и адаптировать эти данные в любом формате при условии указания авторства OpenVan.camp. creativecommons.org →
Для AI-агентов и LLM-инструментов
  • Без API-ключа. Вызывайте любой эндпоинт напрямую — без регистрации и заголовков авторизации.
  • CORS включён. Эндпоинты можно вызывать прямо из браузера.
  • Формат ответа: всегда { "success": true, "data": {...} }
  • Кеширование: цены на топливо TTL 6 ч · курсы валют TTL 25 ч · опрашивайте не чаще раза в 10 минут
  • Полная спецификация OpenAPI 3.0: /docs.openapi · примеры на GitHub
  • Атрибуция: добавьте ?source=your-app.com чтобы обозначить вашу интеграцию — авторизация не требуется, просто хороший тон.

Рекомендуемый шаблон запроса: "Получи текущие цены на топливо для [страна] в [валюта], используя API OpenVan.camp по адресу https://openvan.camp/api/fuel/prices"

Доступные эндпоинты

GET /api/fuel/prices 169 стран

Актуальные цены на топливо для 169 стран. Список ключей цен берётся из текущего API-контракта. Обновляются еженедельно из официальных государственных источников (EU Oil Bulletin, Statistics Norway, EIA, ANP, NRCan и др.). Кеш 6 часов. Данные о топливе обновлены: 12 сентября 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

Пример ответа:

{
    "success": true,
    "data": {
        "DE": {
            "country_code": "DE",
            "country_name": "Germany",
            "region": "europe",
            "currency": "EUR",
            "local_currency": "EUR",
            "unit": "liter",
            "units": {
                "diesel": "liter",
                "diesel_premium": "liter",
                "gasoline": "liter",
                "gasoline_premium": "liter",
                "lpg": "liter"
            },
            "prices": {
                "gasoline_regular": null,
                "gasoline": 2.2954,
                "gasoline_premium": 2.408,
                "gasoline_super": null,
                "diesel_regular": null,
                "diesel": 2.3536,
                "diesel_premium": 2.6283,
                "lpg": 1.1109,
                "cng": null,
                "e85": null,
                "kerosene": null,
                "premium": 2.408
            },
            "price_changes": {
                "gasoline_regular": null,
                "gasoline": 0.0426,
                "gasoline_premium": 0.016,
                "gasoline_super": null,
                "diesel_regular": null,
                "diesel": 0.0876,
                "diesel_premium": 0.0979,
                "lpg": 0.0076,
                "cng": null,
                "e85": null,
                "kerosene": null,
                "premium": null
            },
            "fetched_at": "2026-09-12T09:02:07+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": 169,
        "updated_at": "2026-09-12 09:02:07",
        "cache_ttl_hours": 6
    }
}
GET /api/currency/rates 150+ валют

Курсы обмена для 150+ валют относительно EUR. Получаются из нескольких открытых API с автоматическим fallback. Кеш 1 час.

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

Пример ответа (на базе EUR, все курсы относительно 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+ стран

VanBasket Food Price Index — насколько дорогая еда относительно среднемирового уровня (Мир = 100). На основе World Bank ICP 2021 с корректировкой по 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 пара

Визовые и пограничные правила: сколько можно находиться для любой пары «паспорт × страна», как считаются дни (на каждый въезд или в скользящем окне), обнуляет ли счётчик визаран — плюс правила временного ввоза автомобиля. У каждого ответа есть уверенность, источник и слой, из которого он взят.

# 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 — число дней верное, а способ подсчёта предположение; уточняйте на границе. Справочные данные, не юридическая консультация.
Параметры: passport destination weight plate mode locale limit Полная документация
GET /api/events ванлайф-события

Постраничный список ванлайф-событий — выставки, фестивали, встречи, автопробеги. Фильтрация по статусу, типу, стране. Локализованные названия на 7 языках.

# 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 — одно из en ru de fr es pt tr. По умолчанию: en. Неизвестная локаль молча заменяется на en. запасной вариант для articles: если статьи на запрошенной локали не найдены, возвращаются все исходные статьи.
Параметры: locale status type country search page limit Полная документация →
GET /api/stories 7 языков

Ванлайф-новости, агрегированные из 200+ изданий и переведённые на 7 языков. Каждый сюжет содержит sources — оригинальные статьи изданий с прямыми ссылками, названиями источников, датами публикации и кодами языка.

# 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"

Пример ответа для /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 — одно из en ru de fr es pt tr. По умолчанию: en. Влияет на title, summary, и category.name. sources[].language всегда оригинальный язык издания, независимо от локали.
Параметры: locale category country search page limit Полная документация →

Быстрый старт

JavaScript — самый дешёвый дизель в Европе

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 — конвертация в USD по курсам валют

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
// unit: "liter" | "gallon" (US, 3.78541 L) | "imperial_gallon" (4.54609 L)
const LITERS_PER_UNIT = { liter: 1, gallon: 3.78541, imperial_gallon: 4.54609 };
function toUSD(price, currency, unit) {
  const usd = (price / rates[currency]) * rates["USD"];
  return usd / (LITERS_PER_UNIT[unit] || 1);
}

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

Python — страны с СПГ

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")

Больше примеров (bash, pandas, виджет): GitHub →

SDK для JavaScript / TypeScript

Официальный типизированный SDK — без настройки, работает в Node.js ≥ 18, браузере, Cloudflare Workers, Deno, Bun. API-ключ не нужен.

Установка

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

Быстрый старт (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 });

Атрибуция

При использовании наших данных, пожалуйста, добавьте видимую атрибуцию. Вот готовый код:

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

Обозначьте ваше приложение — добавьте ?source=yoursite.com

Передавайте source — параметр запроса с вашим доменом или названием приложения. Регистрация не нужна — это помогает нам понимать, как используются данные, и отмечать активные проекты. Значение возвращается в каждом ответе в поле _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"
# }
Предложить новость или событие

Отправляется в "Предложка" для модерации

Все предложения проходят авто-проверку и модерацию. Мы публикуем только выдержки и ссылку на первоисточник. Отправляя данные, вы согласны с Правообладателям, Условия, Политика конфиденциальности и Cookies.

Установите OpenVan.camp

Быстрый доступ и чтение без интернета.

→ В глоссарий