Appearance
API Analytics
Список маршрутів
| # | Метод | Маршрут | Опис | Права доступу |
|---|---|---|---|---|
| 1 | GET | /analytics/agro | Аналіз культур посівів підприємств (пошук по тексту) | L1 |
| 2 | GET | /analytics/agro/:id | Аналіз культур посівів підприємств (за ID організації) | L1 |
| 3 | GET | /analytics/point/generate/:id | Генерація статистики (точковий кейс) | L1 |
| 4 | GET | /analytics/point/voronoi/generate/:id | Генерація полігонів Вороного (точковий кейс) | L1 |
| 5 | GET | /analytics/point/clear-dupes/:id | Очистка дублів (точковий кейс) | L1 |
| 6 | GET | /analytics/point/clear/:id | Очистка статистики (точковий кейс) | L1 |
| 7 | GET | /analytics/point/voronoi/clear/:id | Очистка полігонів Вороного (точковий кейс) | L1 |
| 8 | GET | /analytics/point/community/:id | Статистика по ОТГ (точковий кейс) | L1 |
| 9 | GET | /analytics/point/:id | Статистика по країні (точковий кейс) | L1 |
| 10 | GET | /analytics/point-case/upload | Завантаження даних для точкового кейсу (deprecated?) | L1 |
| 11 | GET | /analytics/polygon/clear/:id | Очистка статистики (полігональний кейс) | L1 |
| 12 | GET | /analytics/polygon/community/:id | Статистика по ОТГ (полігональний кейс) | L1 |
| 13 | GET | /analytics/polygon/country/:id | Статистика по країні (полігональний кейс) | L1 |
| 14 | GET | /analytics/polygon/region/:id | Статистика по області (полігональний кейс) | L1 |
| 15 | GET | /analytics/polygon/community-list/:id | Статистика по всіх ОТГ (полігональний кейс) | L1 |
| 16 | GET | /analytics/polygon/progress | Перевірка стану генерації статистики (полігональний кейс) | L1 |
| 17 | GET | /analytics/polygon/vtile/:layer/:lang/:z/:y/:x | Генерація векторних тайлів (полігональний кейс) | L1 |
1. Аналіз культур посівів підприємств
Метод: GET URL: /analytics/agroПрава доступу: L1
Параметри (Query):
| Параметр | Тип | Обов'язковість | Опис | Приклад |
|---|---|---|---|---|
search | string | опціональний | Пошуковий запит для фільтрації підприємств | "агрофірма" |
limit | number | опціональний | Ліміт записів | 50 |
page | number | опціональний | Сторінка | 1 |
Відповідь (200 OK)
json
{
"total": 1,
"items": [
{
"title": "ДП Лани",
"edrpou": "23424234",
"id": "3669244433938777593",
"fieldsCount": 4,
"totalArea": 992.861,
"analysisDate": "2025-07-22",
"notCropRotation": 1,
"mainCrop": "Кукурудза"
}
]
}2. Аналіз культур посівів підприємств за ID організації
Метод: GET URL: /analytics/agro/:idОпис:
Права доступу: L1
Параметри (Path):
| Параметр | Тип | Обов'язковість | Опис | Приклад |
|---|---|---|---|---|
id | string | обов'язковий | ID підприємства | 3669244433938777593 |
Відповідь (200 OK)
json
{
"fieldsCount": 4,
"totalArea": 992.86,
"years": [
{
"year": 2021,
"area": 675.48,
"coverage": 0.45,
"mainCrop": "Кукурудза"
}
],
"parcels": [
{
"cadastralNumber": "3220484100:10:005:0007",
"area": "706.1706",
"notCropRotation": 1,
"years": [
{
"year": 2021,
"crops": [
{
"class": "Кукурудза",
"crop_rotation": true,
"intersect_area": "348.00",
"intersection_percent": "79.34"
},
{
"class": "Соняшник",
"intersect_area": "143.69",
"intersection_percent": "50.34"
}
]
}
]
}
]
}3. Генерація статистики для точкового кейсу
Метод: GET URL: /analytics/point/generate/:idПрава доступу: L1
Параметри (Path):
| Параметр | Тип | Обов'язковість | Опис | Приклад |
|---|---|---|---|---|
id | string | обов'язковий | Ідентифікатор набору даних | 3429355753738077469 |
Відповідь (200 OK)
http
Event Stream4. Генерація полігонів Вороного для точкового кейсу
Метод: GET URL: /analytics/point/voronoi/generate/:idПрава доступу: L1
Параметри (Path):
| Параметр | Тип | Обов'язковість | Опис | Приклад |
|---|---|---|---|---|
id | string | обов'язковий | Ідентифікатор набору даних | 3429355753738077469 |
Відповідь (200 OK)
http
Event Stream5. Очистка дублів в статистиці точкового кейсу
Метод: GET URL: /analytics/point/clear-dupes/:idПрава доступу: L1
Параметри (Path):
| Параметр | Тип | Обов'язковість | Опис | Приклад |
|---|---|---|---|---|
id | string | обов'язковий | Ідентифікатор набору даних | 3429355753738077469 |
Відповідь (200 OK)
http
Event Stream6. Очистка статистики для точкового кейсу
Метод: GET URL: /analytics/point/clear/:idПрава доступу: L1
Параметри (Path):
| Параметр | Тип | Обов'язковість | Опис | Приклад |
|---|---|---|---|---|
id | string | обов'язковий | Ідентифікатор набору даних | 3429355753738077469 |
Відповідь (200 OK)
http
Event Stream7. Очистка полігонів Вороного для точкового кейсу
Метод: GET URL: /analytics/point/voronoi/clear/:idПрава доступу: L1
Параметри (Path):
| Параметр | Тип | Обов'язковість | Опис | Приклад |
|---|---|---|---|---|
id | string | обов'язковий | Ідентифікатор набору даних | 3429355753738077469 |
Відповідь (200 OK)
http
Event Stream8. Отримання статистики по ОТГ для точкового кейсу
Метод: GET URL: /analytics/point/community/:idПрава доступу: L1
Параметри (Path):
| Параметр | Тип | Обов'язковість | Опис | Приклад |
|---|---|---|---|---|
id | string | обов'язковий | Ідентифікатор набору даних | 3429355753738077469 |
Параметри (Query):
| Параметр | Тип | Обов'язковість | Опис | Приклад |
|---|---|---|---|---|
codifier | string | опціональний | Код КАТОТТГ громади | UA32020070000027895 |
Відповідь (200 OK)
json
{
"time": {
"totalPOI": 1,
"countFiltered": 24,
"communities": 170,
"poi": 96,
"total": 291
},
"name": "Аналітика ефективності розміщення закладів спроможної мережі охорони здоров'я (зона 10 км)",
"nameShort": "Медичні заклади",
"totalPOI": 21368,
"settlementFiltered": "0",
"communityFiltered": "0",
"distance": 30,
"community": {
"totalSettlement": "9",
"totalPOI": "42",
"filteredPOI": "9",
"filteredSettlement": "9",
"communityId": "18501076278620054",
"communityName": "Ковалівська",
"communityCodifier": "UA32020070000027895",
"regionName": "Київська",
"DistrictName": "Білоцерківський",
"geom": {
"type": "MultiPolygon",
"coordinates": []
}
},
"poi": [
{
"poi_id": "3768",
"geom": {
"type": "Point",
"coordinates": []
},
"title": "ПЗ Пологи",
"address": "Васильківський район, Пологи",
"rows": [
{
"name": "Пологи",
"codifier": "UA32020070060063134",
"type": "село",
"distance": 100.2,
"geom": {
"type": "Point",
"coordinates": []
},
"route_geom": {
"type": "LineString",
"coordinates": []
}
}
]
}
]
}9. Отримання статистики по країні для точкового кейсу
Метод: GET URL: /analytics/point/:idПрава доступу: L1
Параметри (Path):
| Параметр | Тип | Обов'язковість | Опис | Приклад |
|---|---|---|---|---|
id | string | обов'язковий | Ідентифікатор набору даних | 3429355753738077469 |
Відповідь (200 OK)
json
{
"meta": {
"totalPOI": "13814",
"remoteCommunities": "679",
"remoteSettlements": "2243",
"actualDate": "2025-04-15",
"pointCaseId": "3429355753738077469",
"name": "Аналітика ефективності розміщення закладів спроможної мережі охорони здоров'я (зона 10 км)",
"nameShort": "Медичні заклади",
"descMap": "Тут ви можете знайти актуальну інформацію про розміщення закладів спроможної мережі охорони здоров'я (зона 10 км)",
"distance": "10"
},
"rows": [
{
"id": "3546194569869657752",
"codifier": "UA01020410000012183",
"name": "Табачненська",
"region": "Автономна Республіка Крим",
"type": "community",
"district": "Бахчисарайський",
"totalPOI": "0",
"totalSettlements": "0",
"remoteSettlements": "0",
"status": 1
}
]
}10. Завантаження даних для точкового кейсу аналітики (deprecated?)
Метод: GET URL: /analytics/point-case/uploadПрава доступу: L1
Параметри (Body): multipart/form-data з файлом даних
Відповідь (200 OK)
json
{
"success": true,
"message": "Дані успішно завантажено",
"upload_id": "upload_001",
"records_imported": 15234,
"file_name": "data_2024.csv"
}11. Очистка статистики для полігонального кейсу
Метод: GET URL: /analytics/polygon/clear/:id
Права доступу: L1
Параметри (Path):
| Параметр | Тип | Обов'язковість | Опис | Приклад |
|---|---|---|---|---|
id | string | обов'язковий | Ідентифікатор набору даних | 3559901252630349225 |
Відповідь (200 OK)
http
Event Stream12. Отримання статистики по ОТГ для полігонального кейсу
Метод: GET URL: /analytics/polygon/community/:idПрава доступу: L1
Параметри (Path):
| Параметр | Тип | Обов'язковість | Опис | Приклад |
|---|---|---|---|---|
id | string | обов'язковий | Ідентифікатор набору даних | 3559901252630349225 |
Параметри (Query):
| Параметр | Тип | Обов'язковість | Опис | Приклад |
|---|---|---|---|---|
codifier | string | опціональний | Код КАТОТТГ громади | UA32020070000027895 |
Відповідь (200 OK)
json
{
"time": {
"params": 76,
"settlement": 47,
"community": 0,
"data": 246
},
"name": "Аналіз земельних ділянок (Категорії)",
"nameShort": null,
"totalArea": 21144.77,
"indicatorKey": "category_code",
"indicatorName": "Призначення земельної ділянки",
"categoryId": "3ee14e2e8c43",
"categoryItems": [
{
"id": "3559901252630349225",
"name": "Аналіз земельних ділянок (Категорії)",
"name_short": null
}
],
"options": [
{
"id": "0",
"text": "Не визначено",
"color": "rgba(140, 129, 133, 0.56)",
"hide": false
},
{
"id": "100",
"text": "Землі сільськогосподарського призначення",
"color": "rgba(255, 215, 0, 1)",
"hide": false
},
{
"id": "500",
"text": "Землі рекреаційного призначення",
"color": "rgba(255, 140, 0, 1)",
"hide": false
}
],
"community": {
"communityId": "830",
"codifier": "UA32020070000027895",
"communityName": "Ковалівська",
"communityCodifier": "UA32020070000027895",
"regionName": "Київська",
"DistrictName": "Білоцерківський",
"geom": {}
},
"data": [
{
"key": "100",
"count": 9102,
"area": "18783.3074173132946634934",
"percent": "0.88831901301500495517"
},
{
"key": "500",
"count": 5,
"area": "3.6776203863695549",
"percent": "0.00017392571176535380"
}
]
}13. Отримання статистики по країні для полігонального кейсу
Метод: GET URL: /analytics/polygon/country/:idПрава доступу: L1
Параметри (Path):
| Параметр | Тип | Обов'язковість | Опис | Приклад |
|---|---|---|---|---|
id | string | обов'язковий | Ідентифікатор набору даних | 3559901252630349225 |
Відповідь (200 OK)
json
{
"time": {
"case": 15,
"data": 28,
"total": 43
},
"name": "Аналіз земельних ділянок (Категорії)",
"nameShort": null,
"categoryId": "3ee14e2e8c43",
"categoryItems": [
{
"id": "3559901252630349225",
"name": "Аналіз земельних ділянок (Категорії)",
"name_short": null
}
],
"actualDate": "2025-02-06",
"generateDate": "2026-06-12",
"totalAOI": 26943763,
"totalArea": 46468241.13,
"indicatorKey": "category_code",
"indicatorName": "Призначення земельної ділянки",
"options": [
{
"id": "100",
"text": "Землі сільськогосподарського призначення",
"color": "rgba(255, 215, 0, 1)",
"hide": false
},
{
"id": "300",
"text": "Землі природно-заповідного та іншого природоохоронного призначення",
"color": "rgba(43, 147, 72, 1)",
"hide": false
}
],
"data": [
{
"key": "300",
"count": 5564,
"area": "830407.88",
"percent": "0.02"
},
{
"key": "100",
"count": 17331792,
"area": "33119598.48",
"percent": "0.71"
}
]
}14. Отримання статистики по області для полігонального кейсу
Метод: GET URL: /analytics/polygon/region/:idПрава доступу: L1
Параметри (Path):
| Параметр | Тип | Обов'язковість | Опис | Приклад |
|---|---|---|---|---|
id | string | обов'язковий | Ідентифікатор набору даних | 3559901252630349225 |
Параметри (Query):
| Параметр | Тип | Обов'язковість | Опис | Приклад |
|---|---|---|---|---|
codifier | string | опціональний | Код області | UA32 |
Відповідь (200 OK)
json
{
"time": {
"case": 16,
"data": 71,
"region": 1542,
"total": 1629
},
"name": "Аналіз земельних ділянок (Категорії)",
"nameShort": null,
"totalArea": 2418151.80,
"indicatorKey": "category_code",
"indicatorName": "Призначення земельної ділянки",
"options": [
{
"id": "0",
"text": "Не визначено",
"color": "rgba(140, 129, 133, 0.56)",
"hide": false
},
{
"id": "100",
"text": "Землі сільськогосподарського призначення",
"color": "rgba(255, 215, 0, 1)",
"hide": false
}
],
"region": {
"id": "13",
"name": "Київська",
"codifier": "UA32000000000030281",
"geom": {}
},
"data": [
{
"indicator_id": "100",
"count": 1210989,
"area": 1413053.58,
"percent": 0.58
},
{
"indicator_id": "0",
"count": 25401,
"area": 7034.37,
"percent": 0.01
}
]
}15. Отримання статистики по всіх ОТГ для полігонального кейсу
Метод: GET URL: /analytics/polygon/community-list/:idПрава доступу: L1
Параметри (Path):
| Параметр | Тип | Обов'язковість | Опис | Приклад |
|---|---|---|---|---|
id | string | обов'язковий | Ідентифікатор набору даних | 3559901252630349225 |
Відповідь (200 OK)
json
{
"count": 1767,
"categoryId": "3ee14e2e8c43",
"categoryItems": [
{
"id": "3559901252630349225",
"name": "Аналіз земельних ділянок (Категорії)",
"name_short": null
}
],
"rows": [
{
"codifier": "UA12060130000012028",
"area": "25320.37",
"count": "6210"
}
]
}16. Перевірка стану генерації статистики для полігонального кейсу
Метод: GET URL: /analytics/polygon/progressПрава доступу: L1
Відповідь (200 OK)
json
{
"skipped": [
"3559901252630349223"
],
"errored": [
"3559901252630349224"
],
"finished": [
"3559901252630349225"
],
"next": {
"id": "3559901252630349226",
"table": "data.parcel",
"count": 0,
"dbname": "postgres",
"host": "127.0.0.1",
"port": 5432
}
}17. Генерація векторних тайлів полігонального кейсу
Метод: GET URL: /analytics/polygon/vtile/:layer/:lang/:z/:y/:xПрава доступу: L1
Параметри (Path):
| Параметр | Тип | Обов'язковість | Опис | Приклад |
|---|---|---|---|---|
layer | string | обов'язковий | Ідентифікатор шару даних | 3559901252630349225 |
lang | string | обов'язковий | Мова локалізації (ua, en) | ua |
z | string | обов'язковий | Рівень масштабу (zoom) | 1 |
y | string | обов'язковий | Координата Y тайлу | 1 |
x | string | обов'язковий | Координата X тайлу + Extension | 1.png |
Відповідь (200 OK)
http
HTTP/1.1 200 OK
Content-Type: application/x-protobuf
Content-Encoding: gzip
[Mapbox Vector Tile data (VMT)]Коди помилок
| Код | Назва | Опис |
|---|---|---|
| 400 | Bad Request | Некоректний запит (відсутні обов'язкові параметри) |
| 401 | Unauthorized | Відсутня авторизація |
| 403 | Forbidden | Доступ заборонено |
| 404 | Not Found | Дані або ідентифікатор не знайдено |
| 409 | Conflict | Операція неможлива (наприклад, генерація вже виконується) |
| 429 | Too Many Requests | Перевищено ліміт запитів |
| 500 | Internal Server Error | Помилка сервера |
Примітки
- L1 - доступ для авторизованих користувачів
- Точковий кейс (POI) - аналітика на основі точкових об'єктів (точки інтересу)
- Полігональний кейс (Polygon) - аналітика на основі полігональних об'єктів (ділянки, райони)
- Полігони Вороного (Voronoi diagrams) - геометричне розбиття площини на області, найближчі до заданих точок
- Генерація статистики може бути ресурсоємною операцією, рекомендується використовувати ендпоїнт
/analytics/polygon/progressдля моніторингу стану
