API для розробників
«Пильно» має відкриті методи читання тих самих даних, що бачить карта. Вони призначені для застосунків, ботів і сайтів, які показують ситуацію з посиланням на джерело.
Дані неофіційні й можуть бути неточними. Не використовуйте їх як єдине джерело для рішень, від яких залежить безпека.
Правила
- Атрибуція обов’язкова: «Джерело: Пильно (pylno.com.ua)». Докладно: Ліцензія та атрибуція.
- Без масового вивантаження. Не завантажуйте історію масово й не обходьте обмеження. Потрібен більший обсяг — напишіть на [email protected].
- Кешуйте. Усі методи віддають
ETag: надсилайтеIf-None-Matchі отримуйте304. Для оновлень краще/v1/changes, ніж повне перечитування. - Обмеження швидкості: близько 120 запитів на хвилину з однієї адреси. Відповідь
429міститьRetry-After. - Автентифікація для читання не потрібна.
Основні методи
Базова адреса: https://pylno.com.ua. Усі відповіді в JSON.
| Метод | Що повертає |
|---|---|
GET /v1/events | Події (публічне подання): types, channels, bbox, since, active, limit, cursor |
GET /v1/changes?from=<версія> | Лише зміни після версії даних, разом із видаленнями |
GET /v1/channels | Канали-джерела з оформленням |
GET /v1/region-alerts | Офіційний стан тривоги по областях |
GET /v1/stats/activity | Кількість подій по зонах і годинах |
GET /v1/time | Годинник сервера (для коректного віку подій) |
GET /v1/health | Стан сервісу й джерел |
Приклад
curl -s -H "Accept: application/json" "https://pylno.com.ua/v1/events?active=true&limit=20"
Кожна подія містить тип загрози (threat_type), назву українською та іншими мовами (headline), статус, точки треку (points: тип, місце, координати на рівні населеного пункту) і посилання на дописи-першоджерела (source_posts).
Що не віддаємо
Результати ударів, роботу ППО та позиції військових не публікуємо ні на карті, ні через API.
Контракт
Повний опис відкритих методів ведеться в контракті проєкту (OpenAPI 3.1). Якщо вам потрібен файл специфікації або ключ для більшого обсягу, напишіть на [email protected].