iBusAPI

Транспортный API iBus

Остановки, линии, расписания, прибытия в реальном времени и официальные сообщения об изменениях движения общественного транспорта Израиля в JSON по HTTPS. Те же данные, что использует приложение iBus, - для проектов с одобренной заявкой.

Azrieli Mall/Menahem Begin Road
остановка 21472
GET /api/transport/v2/stop/21472/arrivals?limit=6&lang=en
  1. 271Yerushalayim Boulevard/Mifrats Shlomoв реальном времени אגדсейчас
  2. 42ת.רק''ל הקוממיות/דרך בגיןпо расписанию דן17:01
Пример ответа (сохранён, не живой)
Показать JSON этого ответа
200 application/json
{
  "stopId": "21472",
  "updatedAt": "2026-10-21T17:16:22+03:00",
  "stale": false,
  "arrivals": [
    {
      "vehicle_ref": "AVEexampleVehicle01",
      "line_ref": "9877",
      "route_short_name": "271",
      "agency_id": "3",
      "agency_name": "אגד",
      "stop_point_ref": "21472",
      "direction_ref": "1",
      "dated_vehicle_journey_ref": "9719820",
      "data_frame_ref": "2026-10-21",
      "item_identifier": "1433250322",
      "confidence_level": "probablyReliable",
      "call_order": 17,
      "distance_from_stop_m": 6887,
      "latitude": 32.0769,
      "longitude": 34.792049,
      "bearing": 206.0,
      "velocity": 0.0,
      "motion": "stopped",
      "destination_name": "Yerushalayim Boulevard/Mifrats Shlomo",
      "destination_ref": "35810",
      "direction_text": null,
      "current_stop_name": null,
      "current_stop_code": "21472",
      "origin_aimed_departure_utc": "2026-10-21T13:45:00Z",
      "expected_arrival_utc": "2026-10-21T14:17:00Z",
      "aimed_arrival_utc": null,
      "recorded_at_utc": "2026-10-21T14:16:05Z",
      "expected_in_min": 0,
      "wheelchair_accessible": 1,
      "stops_remaining": 16,
      "freshness": {
        "state": "live",
        "age_sec": 17,
        "observed_at_utc": "2026-10-21T14:16:05Z"
      },
      "observation_age_sec": 17,
      "gtfs_trip_id": "8947270_211026",
      "gtfs_stop_sequence": 17,
      "dest_code": "35810",
      "dest_names": {
        "he": "שדרות ירושלים/מפרץ שלמה",
        "en": "Yerushalayim Boulevard/Mifrats Shlomo",
        "ar": "جادة يروشلايم/خليج شلومو"
      },
      "trust": {
        "v": 1,
        "observed_at_utc": "2026-10-21T14:16:05Z",
        "received_at_utc": "2026-10-21T14:16:22Z",
        "age_sec": 17,
        "freshness": "live",
        "identity": "exact",
        "position": "ok",
        "checks": {
          "motion": "ok",
          "time": "ok",
          "geometry": "unknown",
          "direction": "unknown"
        },
        "issues": [],
        "forecast": "source",
        "verdict": "live"
      },
      "vtok": "EXAMPLEpass1"
    },
    {
      "vehicle_ref": "AVEexampleVehicle02",
      "line_ref": "2454",
      "route_short_name": "42",
      "agency_id": "5",
      "agency_name": "דן",
      "stop_point_ref": "21472",
      "direction_ref": "1",
      "dated_vehicle_journey_ref": "3019375",
      "data_frame_ref": "2026-10-21",
      "item_identifier": "1433250318",
      "confidence_level": "probablyReliable",
      "call_order": 24,
      "distance_from_stop_m": 8190,
      "latitude": 32.080585,
      "longitude": 34.79604,
      "bearing": 248.0,
      "velocity": 0.0,
      "motion": "stopped",
      "destination_name": "ת.רק''ל הקוממיות/דרך בגין",
      "destination_ref": "36108",
      "direction_text": null,
      "current_stop_name": null,
      "current_stop_code": "21472",
      "origin_aimed_departure_utc": "2026-10-21T13:35:00Z",
      "expected_arrival_utc": "2026-10-21T14:17:00Z",
      "aimed_arrival_utc": null,
      "recorded_at_utc": "2026-10-21T14:14:15Z",
      "expected_in_min": 0,
      "wheelchair_accessible": 1,
      "stops_remaining": 23,
      "freshness": {
        "state": "scheduled_confirmed",
        "age_sec": 127,
        "observed_at_utc": "2026-10-21T14:14:15Z",
        "basis": "gtfs_confirmed_stale_observation",
        "scheduled_arrival_utc": "2026-10-21T14:01:54Z"
      },
      "observation_age_sec": 127,
      "stale_observation": true,
      "schedule_confirmed": true,
      "gtfs_trip_id": "3019266_211026",
      "gtfs_stop_sequence": 24,
      "gtfs_scheduled_arrival_utc": "2026-10-21T14:01:54Z",
      "gtfs_scheduled_departure_utc": "2026-10-21T14:01:54Z",
      "dest_code": "36108",
      "dest_names": {
        "he": "ת.רק''ל הקוממיות/דרך בגין",
        "en": "ת.רק''ל הקוממיות/דרך בגין",
        "ar": "ת.רק''ל הקוממיות/דרך בגין"
      },
      "trust": {
        "v": 1,
        "observed_at_utc": "2026-10-21T14:14:15Z",
        "received_at_utc": "2026-10-21T14:16:22Z",
        "age_sec": 127,
        "freshness": "scheduled_confirmed",
        "identity": "exact",
        "position": "ok",
        "checks": {
          "motion": "ok",
          "time": "ok",
          "geometry": "unknown",
          "direction": "unknown"
        },
        "issues": [],
        "forecast": "timetable",
        "verdict": "schedule"
      },
      "vtok": "EXAMPLEpass2"
    }
  ],
  "source": "siri",
  "server_now_utc": "2026-10-21T14:16:22Z",
  "freshness_contract": 1,
  "source_state": "ok"
}

Что можно получить#

Доступ#

Интеграции обращаются к API со своего сервера с ключом одобренного проекта: Authorization: Bearer <ключ>. Как получить доступ. Личные функции приложения iBus (избранное, уведомления, ассистент Лиор) в этот API не входят; см. доступ, ключи и приватность.

Ключ обязателен: с 24.10.2026 методы /api/transport/ отвечают только запросам с ключом (без ключа - 401 KEY_REQUIRED). Старые адреса без /transport пока отвечают и без ключа (переходный режим); об окончании объявим на странице доступа заранее.

Первый запрос#

curl
curl -H "Authorization: Bearer $IBUS_API_KEY" "https://api.ibusisrael.online/api/transport/stops/search?q=Azrieli&limit=3&lang=en"

Храните ключ на сервере, например в переменной окружения IBUS_API_KEY, которую используют все примеры.

В ответе - остановки с публичным кодом, названием и координатами. С этим кодом можно запросить прибытия: руководство «Первый запрос» проводит по шагам.

Данные, на которые можно опираться#

Каждая строка реального времени несёт freshness. Прогнозом в реальном времени считаются только строки с freshness.state = "live". Старое наблюдение никогда не выдаётся за живое, а время по расписанию так и подписано.

Время в расписании - это время GTFS служебной даты, оно бывает позже 24:00. Об этом и об идентификаторах - в разделе «Данные и время».

Ограничения#

Лимиты принадлежат проекту: запросы в минуту (с коротким всплеском), в сутки и в месяц, одновременные запросы и отдельный бюджет тяжёлых методов. При превышении ответ - 429 с Retry-After. Подробнее: ограничения и ошибки.

Для инструментов и ИИ-ассистентов#

Все опубликованные операции#

МетодОперацияДанные
GETСостояние сервиса
/api/transport/healthz
справочник
GETПравила свежести данных реального времени
/api/transport/contract/freshness
справочник
GETПоиск остановок по названию или коду
/api/transport/stops/search
справочник
GETОстановка: место, адрес, тарифная зона
/api/transport/stop/{stopCode}
справочник
GETОстановки рядом с точкой
/api/transport/nearby_stops
справочник
GETНазвания и координаты до 50 остановок
/api/transport/gw/stops/brief
справочник
GETБлижайшие прибытия на остановку (реальное время)
/api/transport/v2/stop/{stopCode}/arrivals
реальное время
GETРасписание остановки на служебную дату
/api/transport/stop/{stopCode}/day_schedule
расписание
GETСтанции Израильских железных дорог
/api/transport/gw/rail/stations
справочник
GETПоиск линий по номеру
/api/transport/routes/search
справочник
GETМаршрут и его остановки
/api/transport/line/{routeId}/full
справочник
GETГеометрия маршрута на дату
/api/transport/gw/line/{routeId}/shape
справочник
GETВсе варианты линии, к которой относится маршрут
/api/transport/gw/line/{routeId}/variants
справочник
GETВарианты линии по номеру
/api/transport/gw/line/variants
справочник
GETОтправления маршрута на служебную дату
/api/transport/line/{routeId}/day_schedule
расписание
GETСообщения о нарушениях движения
/api/transport/alerts
сообщения
GETОдно сообщение
/api/transport/alerts/{alertId}
сообщения
GETСообщения по остановке
/api/transport/alerts/by-stop/{stopCode}
сообщения
GETСообщения по маршруту
/api/transport/alerts/by-line/{agencyId}/{routeId}
сообщения
GETПеревозчики
/api/transport/agencies
справочник
GETВерсия списка остановок
/api/transport/stops/version
справочник
GETЕсть ли дата в расписании и обычный ли это день
/api/transport/gw/service-day
справочник
GETЧто сервер видит о вашем запросе (адрес, ключ, проект)
/api/access/whoami
Доступ
Руководство
↑ ↓ перейтиEnter открытьEsc закрыть