Водители по всей России отмечают на карте Fbenz, где есть бензин. Подключите эти данные одним GET-запросом — или встройте готовую карту без нашего логотипа.
Выбор зависит от одного вопроса: есть ли у вас своя карта.
Забирайте координаты АЗС и статусы топлива, рисуйте на своей карте в своём стиле. Подходит банкам с готовым приложением.
fb_live_…, запросы сервер-серверГотовая карта Fbenz без нашего брендинга: кластеры, фильтры топлива, карточки АЗС. Встраивается одним iframe за вечер.
pk_live_…, привязан к вашим доменамВсё, что нужно, — API-ключ и curl. Аутентификация уже внутри примера.
Ключ выдаёт команда Fbenz при подключении — напишите вашему менеджеру. Ключ показывается один раз: скопируйте его сразу и храните как пароль.
Подставьте свой ключ в заголовок Authorization.
curl -H "Authorization: Bearer fb_live_ВАШ_КЛЮЧ" \
"https://kartabenzina.ru/api/v1/partner/stations?city=Москва"
Каждая станция — координаты, бренд и блок fuel с текущим статусом.
{
"stations": [{
"id": "n1234567890",
"lat": 55.7558, "lon": 37.6173,
"brand": "Лукойл",
"addr": "Ленинградский пр-т, 63",
"fuel": {
"status": "yes", // yes | queue | no | nodata
"fuels_now": "92,95,dt", // что есть
"fuels_no": "100", // чего нет
"confirmations": 3, // подтверждений от водителей
"updated": "2026-07-16 09:41:07"
}
}],
"count": 412,
"as_of": "2026-07-16 09:45:00",
"stale_after_hours": 24
}
Передавайте as_of из прошлого ответа в
/stations/delta?updated_since= раз в 1–5 минут и раз в час
обновляйте полный снапшот. Подробности — в разделе
«Свежесть и лимиты».
Все методы — под /api/v1/partner, аутентификация —
заголовком Authorization: Bearer <ключ>.
Машиночитаемая спецификация — openapi.json.
| Задача | Метод | Что вернёт |
|---|---|---|
| Получить АЗС города или области карты | GET/stations?city= или ?bbox= |
До 4000 станций со статусами. Радиус города — параметром radius_km (до 60). |
| Следить за изменениями | GET/stations/delta?updated_since= |
Только станции, чей статус менялся с указанного момента. Курсор — поле as_of. |
| Открыть карточку одной АЗС | GET/stations/{id} |
Станция и её текущий статус. |
| Список городов для меню | GET/cities?q= |
Города с координатами и зумом, по населению или по поиску. |
| Посмотреть свой расход | GET/usage |
Запросы за сегодня, лимиты, разбивка по дням и методам. |
| Запросить другие лимиты | POST/limit-requests |
Заявка уходит команде Fbenz; статус — в кабинете партнёра или GET-ом того же пути. |
Данные краудсорсные: водитель отметил — через несколько минут видно в API. Чтобы не жечь квоту, поллите дельту, а не снапшоты.
stale_after_hours в каждом ответе).
Протухший статус отдаётся как nodata./stations. Его ETag учитывает
именно видимое состояние: если ничего не изменилось, получите бесплатный 304.| Что | Как часто | Зачем |
|---|---|---|
/stations/delta | раз в 1–5 минут | Свежие изменения. Курсор — as_of из прошлого ответа. |
/stations (полный, с If-None-Match) | раз в час | Ловит протухания и пересчёты. Без изменений — 304, почти бесплатно. |
У каждого партнёра — свой лимит в минуту и суточная квота. Текущее состояние — в заголовках каждого ответа:
X-RateLimit-Limit: 120 // ваш лимит в минуту
X-RateLimit-Remaining: 118 // осталось в этой минуте
X-RateLimit-Reset: 1784192460 // unix-время сброса минуты
X-RateLimit-Daily-Limit: 50000 // суточная квота
X-RateLimit-Daily-Remaining: 49212
При превышении придёт 429 с заголовком Retry-After —
подождите указанное число секунд и повторите. Квота сбрасывается в 00:00 UTC.
Нужны лимиты выше — отправьте заявку из кабинета партнёра: укажите новые значения, мы отвечаем в течение рабочего дня, одобренные лимиты применяются автоматически.
Карта Fbenz без брендинга Fbenz: кластеры, фирменные маркеры брендов АЗС, фильтр топлива, карточки станций. Одна строка HTML.
<iframe
src="https://kartabenzina.ru/widget/?key=pk_live_ВАШ_КЛЮЧ&city=Москва"
width="100%" height="480" style="border:0"
title="Наличие топлива на АЗС"></iframe>
| Параметр | Значения | Что делает |
|---|---|---|
key | pk_live_… |
Ваш публикуемый ключ. Обязательный. |
city | название города | С какого города открыть карту. |
theme | light · dark · auto |
Тема. auto следует за системной. |
fuel | 92, 95, dt… |
Сразу включить фильтр по топливу. |
nofilter | 1 |
Спрятать панель фильтров. |
fb_live_… во фронтенд
не вставляйте никогда — он для запросов с сервера.Все ошибки — в формате RFC 9457 (application/problem+json):
машиночитаемый тип, человекочитаемое объяснение.
{
"type": "https://fbenz.ru/problems/rate-limit-exceeded",
"title": "Rate limit exceeded",
"status": 429,
"detail": "Minute quota of 120 requests exhausted; retry after 37s.",
"limit": 120, "window": "60s"
}
| Код | Тип | Что делать |
|---|---|---|
401 | invalid-key |
Ключ не подошёл или отозван. Проверьте, что копируете целиком; потеряли — запросите новый. |
403 | domain-not-allowed · ip-not-allowed · secret-key-required |
Ключ используется не оттуда: виджет-ключ — только с ваших доменов, секретный — только с ваших IP (если включена привязка). |
422 | bad-bbox · bad-timestamp · missing-area |
Параметры не прочитались — формат указан в detail. |
429 | rate-limit-exceeded · daily-quota-exceeded |
Упёрлись в лимит. Подождите Retry-After секунд; растёте — запросите новые лимиты в кабинете. |
503 | upstream-unavailable |
Кратковременный сбой на нашей стороне. Повторите через несколько секунд — данные не потеряются. |
fb_live_… секретный — все методы API, только
сервер-сервер. Храните в секретах, как пароль от базы.pk_live_… публикуемый — только виджет, работает
лишь на ваших доменах. Можно спокойно вставлять в HTML.Свой расход, лимиты и заявки смотрите в кабинете партнёра — вход по секретному ключу, без регистрации.