Otwarte dane (open data) to standard nowoczesnej administracji. API w systemie Budżetu Obywatelskiego pozwala mediom, badaczom i organizacjom korzystać z danych w czasie rzeczywistym. Jak to zorganizować?
Dlaczego API jest ważne?
Dla transparentności:
- Dane dostępne dla każdego
- Możliwość niezależnej weryfikacji
- Budowanie zaufania
Dla ekosystemu:
- Media mogą tworzyć własne wizualizacje
- Badacze analizują partycypację
- NGO monitorują proces
Jakie dane udostępniać?
Dane publiczne (bez ograniczeń):
- Lista projektów (nazwa, opis, lokalizacja, kategoria)
- Status weryfikacji (dopuszczony/odrzucony)
- Wyniki głosowania (liczba głosów)
- Statystyki zbiorcze (frekwencja, demografie)
Dane ograniczone (po autoryzacji):
- Szczegółowe statystyki głosowania
- Dane geograficzne głosów
- Historia zmian projektów
Dane chronione (NIGDY):
- Dane osobowe głosujących
- Powiązanie głos-mieszkaniec
- Dane wnioskodawców bez zgody
Architektura API
REST API (REKOMENDOWANE)
GET /api/v1/projects - lista projektów
GET /api/v1/projects/{id} - szczegóły projektu
GET /api/v1/results - wyniki głosowania
GET /api/v1/statistics - statystyki zbiorcze
Formaty danych
- JSON (domyślny)
- CSV (eksport)
- GeoJSON (dane geograficzne)
Przykładowa odpowiedź
{
"project_id": "BO2026-0142",
"title": "Plac zabaw ul. Kwiatowa",
"category": "infrastruktura",
"district": "Śródmieście",
"cost_estimated": 85000,
"status": "approved",
"votes": 1247,
"rank": 3
}
Autoryzacja i limity
Poziomy dostępu:
| Poziom | Dostęp | Limit |
|---|---|---|
| Publiczny | Dane podstawowe | 100 req/h |
| Zarejestrowany | Dane rozszerzone | 1000 req/h |
| Partner | Pełne dane | 10000 req/h |
Klucze API:
- Rejestracja przez formularz
- Automatyczne generowanie klucza
- Monitoring użycia
Integracja z mediami
Widget wyników na żywo
<iframe src="https://bo.miasto.pl/embed/results"
width="600" height="400"></iframe>
Feed RSS/Atom
- Nowe projekty
- Zmiany statusów
- Wyniki głosowania
Webhook dla powiadomień
POST /webhook
{
"event": "voting_started",
"data": {...}
}
Dokumentacja API
Dobra dokumentacja zawiera:
- Opis wszystkich endpointów
- Przykłady zapytań i odpowiedzi
- Kody błędów
- Sandbox do testów
- Changelog
Narzędzia: Swagger/OpenAPI, Postman
Przykłady wykorzystania
Media lokalne:
- Mapy projektów na portalu
- Tabele wyników w artykułach
- Powiadomienia o wynikach
Badacze:
- Analizy partycypacji
- Porównania między miastami
- Trendy w czasie
Organizacje społeczne:
- Monitoring realizacji
- Raporty dla mieszkańców
- Promocja konkretnych projektów
Podsumowanie
API dla Budżetu Obywatelskiego to:
- Transparentność przez otwarte dane
- Wsparcie dla ekosystemu (media, NGO, badacze)
- Standard nowoczesnej administracji