Станции
Активные АЗС: бренд, адрес, координаты, статус наличия и оценка очереди.
GET /stationsНаличие топлива, цены и очереди на заправках по всей стране. Один запрос — актуальный JSON. Только чтение, версионирование, честные лимиты.
$ curl -s https://api.zapravkin24.ru/v1/stations/8f2c9a1e \
-H "Authorization: Bearer $ZAP_KEY"
{
"id": "8f2c9a1e-4b17-4c02-9d3a-1f77",
"name": "Лукойл АЗС №241",
"brand": "lukoil",
"city": "moscow",
"status": "FUEL", // есть топливо
"location": { "lat": 55.8471, "lng": 37.4899 },
"prices": [
{ "fuel": "AI-92", "price": 54.20 },
{ "fuel": "AI-95", "price": 59.10 },
{ "fuel": "DT", "price": 62.75 }
]
}
Версия 1 открывает станции, цены и агрегаты, которые уже считает приложение. Всё — только чтение, только собственные данные сервиса.
Активные АЗС: бренд, адрес, координаты, статус наличия и оценка очереди.
GET /stationsТекущие цены по видам топлива и история изменений за период.
GET /stations/{id}/price-historyГорода, где работает сервис: слаг, регион, координаты, герб.
GET /citiesСредние по городу, бренду и стране. ★ находите, где топливо дешевле.
GET /cities/{slug}/averagesСправочник брендов АЗС, премиальных линеек и кодов топлива.
GET /brands · /fuel-typesСтатус топлива и оценка очереди на каждой станции — в реальном времени.
GET /cities/{slug}/statsКлючи выдаёт само приложение Заправкин. Никаких заявок и ожидания одобрения — включили режим разработчика и работаете.
В приложении: профиль → настройки → тумблер «Разработчик».
На появившейся вкладке «API» нажмите «Новый ключ». Секрет показывается один раз — сохраните его.
Передайте ключ в заголовке Authorization и получите данные.
curl https://api.zapravkin24.ru/v1/cities/moscow/averages \
-H "Authorization: Bearer $ZAP_KEY"
const res = await fetch(
"https://api.zapravkin24.ru/v1/cities/moscow/averages",
{ headers: { Authorization: `Bearer ${process.env.ZAP_KEY}` } }
);
const { averages } = await res.json();
import requests, os
r = requests.get(
"https://api.zapravkin24.ru/v1/cities/moscow/averages",
headers={"Authorization": f"Bearer {os.environ['ZAP_KEY']}"},
)
print(r.json()["averages"])
Единый формат: понятные ресурсы, курсорная пагинация, ошибки по RFC 9457. Список ниже построен из спецификации OpenAPI работающего API — он не может разойтись с тем, что сервер отвечает на самом деле.
Средние цены по России
Без параметров.
Массив в data[], постраничный курсор в meta
| Поле | Тип | Описание |
|---|---|---|
| fuel | string | |
| avg | number (double) | |
| min | number (double) | |
| max | number (double) | |
| sampleSize | integer (int32) | |
| updatedAt | string |
Бренды АЗС — slug — то, что принимает /v1/stations?brand=.
Без параметров.
Массив в data[], постраничный курсор в meta
| Поле | Тип | Описание |
|---|---|---|
| id | string | |
| name | string | |
| slug | string | |
| color | string | |
| logoUrl | string |
Средние цены по бренду в городе — city обязателен: средняя «по России» для одного бренда смешала бы Москву и Владивосток.
| Параметр | Тип | Описание |
|---|---|---|
| slug* | string | Слаг бренда, напр. lukoil path |
| city* | string | Название города, обязательно query |
Массив в data[], постраничный курсор в meta
| Поле | Тип | Описание |
|---|---|---|
| fuel | string | |
| avg | number (double) | |
| min | number (double) | |
| max | number (double) | |
| sampleSize | integer (int32) | |
| updatedAt | string |
Все города — Города, где работает сервис. Список небольшой и почти статичный — пагинации нет.
Без параметров.
Массив в data[], постраничный курсор в meta
| Поле | Тип | Описание |
|---|---|---|
| id | string | |
| name | string | |
| region | string | |
| slug | string | |
| latitude | number (double) | |
| longitude | number (double) | |
| coatOfArmsUrl | string |
Один город
| Параметр | Тип | Описание |
|---|---|---|
| slug* | string | Слаг города, напр. moscow path |
| Поле | Тип | Описание |
|---|---|---|
| id | string | |
| name | string | |
| region | string | |
| slug | string | |
| latitude | number (double) | |
| longitude | number (double) | |
| coatOfArmsUrl | string |
Средние цены по городу — По ценам, увиденным за последние 14 дней.
| Параметр | Тип | Описание |
|---|---|---|
| slug* | string | Слаг города path |
Массив в data[], постраничный курсор в meta
| Поле | Тип | Описание |
|---|---|---|
| fuel | string | |
| avg | number (double) | |
| min | number (double) | |
| max | number (double) | |
| sampleSize | integer (int32) | |
| updatedAt | string |
Сводка по городу — Наличие топлива и очереди по активным АЗС города.
| Параметр | Тип | Описание |
|---|---|---|
| slug* | string | Слаг города path |
| Поле | Тип | Описание |
|---|---|---|
| city | string | |
| totalStations | integer (int32) | |
| withFuel | integer (int32) | |
| noFuel | integer (int32) | |
| noData | integer (int32) | |
| queuedStations | integer (int32) | |
| avgQueueMinutes | integer (int32) | |
| fuelPrices | FuelAverageResponse[] |
Премиальные линейки топлива — G-Drive, Pulsar и подобные, с привязкой к бренду.
Без параметров.
Массив в data[], постраничный курсор в meta
| Поле | Тип | Описание |
|---|---|---|
| id | string | |
| brandId | string | |
| name | string | |
| slug | string | |
| color | string | |
| logoUrl | string |
Коды топлива — Единственный публичный источник строк, которые принимает ?fuel= и возвращает prices[].fuel.
Без параметров.
Массив в data[], постраничный курсор в meta
| Поле | Тип | Описание |
|---|---|---|
| code | string | |
| label | string |
Список активных АЗС — Фильтры по городу, бренду, топливу и геозоне. Постраничный обход — курсорный: передайте meta.cursor из предыдущего ответа в параметр cursor. Пустой meta.cursor означает, что страницы кончились.
| Параметр | Тип | Описание |
|---|---|---|
| city | string | Слаг города, напр. moscow query |
| brand | string | Слаг бренда, напр. lukoil query |
| fuel | string | Код топлива: AI-92, AI-95, AI-95+, AI-98, AI-100, DT, GAS query |
| bbox | string | Геозона minLng,minLat,maxLng,maxLat query |
| cursor | string | Курсор следующей страницы (meta.cursor) query |
| limit | integer (int32) | 1–200, по умолчанию 50 query |
Массив в data[], постраничный курсор в meta
| Поле | Тип | Описание |
|---|---|---|
| id | string | |
| name | string | |
| brand | string | |
| address | string | |
| city | string | |
| location | Location | |
| status | string | |
| statusUpdatedAt | string | |
| openingHours | string | |
| fuelTypes | string[] | |
| distanceMeters | number (double) | |
| prices | PriceResponse[] |
Одна АЗС с текущими ценами — Только опубликованные (активные) станции; закрытая или непромодерированная — 404.
| Параметр | Тип | Описание |
|---|---|---|
| id* | string | UUID станции path |
| Поле | Тип | Описание |
|---|---|---|
| id | string | |
| name | string | |
| brand | string | |
| address | string | |
| city | string | |
| location | Location | |
| status | string | |
| statusUpdatedAt | string | |
| openingHours | string | |
| fuelTypes | string[] | |
| distanceMeters | number (double) | |
| prices | PriceResponse[] |
История цены на АЗС — Изменения цены одного вида топлива, от старых к новым.
| Параметр | Тип | Описание |
|---|---|---|
| id* | string | UUID станции path |
| fuel* | string | Код топлива, обязателен query |
| days | integer (int32) | Глубина в днях: 1–90, по умолчанию 30 query |
Массив в data[], постраничный курсор в meta
| Поле | Тип | Описание |
|---|---|---|
| fuel | string | |
| price | number | |
| reportedAt | string |
Текущие цены на АЗС — По одной записи на вид топлива.
| Параметр | Тип | Описание |
|---|---|---|
| id* | string | UUID станции path |
Массив в data[], постраничный курсор в meta
| Поле | Тип | Описание |
|---|---|---|
| fuel | string | |
| price | number | |
| reportedAt | string |
Предсказуемо и без сюрпризов. Ключ — в заголовке, версия — в пути, остаток лимита — в заголовках ответа.
X-RateLimit-Limit: 10000
X-RateLimit-Remaining: 9964
X-RateLimit-Reset: 1768392000
Retry-After: 37
{
"type": "…/errors/rate-limited",
"title": "Превышен лимит запросов",
"status": 429,
"code": "RATE_LIMITED",
"retryAfterSeconds": 37
}
Данные собраны водителями — тысячами людей, которые отмечали наличие топлива и цены на заправках. Единственное, что мы просим взамен: не выдавайте эти данные за свои.
При любом использовании данных API вы обязаны указать Заправкин как источник и разместить активную ссылку на https://zapravkin24.ru.
Ссылка должна быть видна конечному пользователю и находиться рядом с самими данными — на той же странице или экране. Для ботов и интерфейсов без визуального представления достаточно указания в документации или в ответе. Полностью — в п. 5 Условий использования.
<a href="https://zapravkin24.ru">Данные об АЗС: Заправкин</a>
Выглядит так: Данные об АЗС: Заправкин
Боты, дашборды, исследования цен на топливо. Начните с бесплатного ключа за пару минут.
Получить API-ключ