Aby zintegrować się z naszym systemem, należy wykonać poniższe kroki:
Wystąpić z wnioskiem o możliwość przekazywania do Centralnej Ewidencji Emisyjności Budynków danych poprzez API
Przygotować dane (muszą być zgodne ze strukturą wymaganą przez system (XSD do pobrania), która została udostępniona na stronie wraz z przykładami poprawnych Pliki do Pobrania)
Przesłać plik z danymi
Sprawdzić wyniki walidacji
Ponowić kroki 2-4 lub przekazać dane z pośrednictwem aplikacji webowej
W razie pytań proszę wysłać mail na adres: "pomoc.ceeb@gunb.gov.pl" w tytule: "Integracja API".
Ceeb Documentation Block
CSS and JavaScript Example
Wprowadzenie
Instrukcja integracji
za pośrednictwem API
z
CENTRALNĄ EWIDENCJĄ
EMISYJNOŚCI BUDYNKÓW
Procedura udzielania dostępów do komunikacji systemowej z CEEB
Aby uzyskać uprawnienia do integracji z Centralną Ewidencją
Emisyjności Budynków (CEEB), należy skierować do Głównego Urzędu Nadzoru Budowlanego wniosek o możliwość
przekazywania danych do CEEB poprzez API. W odpowiedzi podmiot otrzyma dane autoryzacyjne umożliwiające
przekazywanie danych w postaci plików w formacie GML.
We wniosku należy wykazać uprawnienie do wprowadzania danych do
ewidencji wynikające z przepisów ustawy o wspieraniu termomodernizacji i remontów oraz o centralnej ewidencji
emisyjności budynków (Dz.U. z 2023 r. poz. 2496), podając jednocześnie numer REGON podmiotu uprawnionego.
Procedura wnioskowa obejmuje dostęp zarówno do środowiska testowego, jak i produkcyjnego CEEB. Wykonanie
testów integracyjnych jest obowiązkowe i musi poprzedzić integrację na środowisku produkcyjnym.
Wzór wniosku o możliwość przekazywania danych do Centralnej Ewidencji Emisyjności
Budynków poprzez API
Głównym celem działań integracyjnych CEEB z systemami dziedzinowymi jest stworzenie warunków, aby podmiot
uprawniony miał możliwość wprowadzania danych do CEEB w sposób zautomatyzowany. Należy jednak przygotować się
na okoliczność pojedynczych przypadków niepowodzenia przekazania danych oraz związanej z tym konieczności
obsłużenia takich przypadków.
Zespół obsługujący CEEB rekomenduje rozwiązanie, aby w sytuacji odrzucenia danych wprowadzić takie dane do
systemu CEEB przez osobę uprawnioną za pomocą interfejsu użytkownika.
Podkreślić należy, że zasilanie CEEB jest możliwe za pośrednictwem aplikacji dostępowej udostępnionej
podmiotom uprawnionym, natomiast interfejsy systemowe pozwalają w sposób zautomatyzowany osiągać wyznaczane
cele.
Przygotowanie danych
API systemu CEEB wymaga wcześniejszego przygotowania danych do
integracji. Aby
dane mogły zasilić system, muszą być zgodne pod względem struktury oraz być zgodne z
rejestrem TERYT
i referencyjną bazą adresową CEEB.
API umożliwia przekazywanie danych jedynie zgodnych z referencyjną bazą adresową, której podstawę stanowi Państwowy Rejestr
Granic prowadzony przez Głównego Geodetę Kraju.
Rekomendujemy zatem dokonanie wstępnej walidacji samego adresu i jego ewentualną aktualizację. W przypadku
adresu spoza bazy referencyjnej jego przekazanie jest możliwe jedynie za pośrednictwem interfejsu https://zone-web.gunb.gov.pl/
Do zapytania należy wprowadzić następujące parametry i nagłówki:
SIMC – identyfikator miejscowości z rejestru TERYT
ULIC – identyfikator ulicy z rejestru TERYT
NR – numer budynku
TOKEN aktualny token ze strony GUNB
Walidacja plików XML system Windows
Walidację struktury Twojego pliku można przeprowadzić za pomocą np.
darmowego
oprogramowania Notepad++ z wtyczką XML Tools (wymaga włączenia/instalacji). Aby to
zrobić, należy wybrać polecenie z menu Wtyczk > XML Tools > Validate Now . Otwórz
plik XML, który chcesz zweryfikować, a następnie uruchom wspomniane polecenie.
Wskaż właściwy plik XSD udostępniony na stronie GUNB i po kilku sekundach wyświetli
się informacja o poprawności pliku lub o błędzie walidacji, który zostanie zaznaczony w
oknie pliku w Notepad++.
Walidacja plików XML system macOS
Walidację struktury pliku XML można przeprowadzić za pomocą narzędzia xmllint, które jest
częścią pakietu libxml2. Aby zwalidować plik XML w odniesieniu do odpowiedniego pliku XSD,
wykonaj następujące kroki:
Otwórz terminal w macOS.
Użyj poniższych poleceń w zależności od pliku, który chcesz zweryfikować.
Po wykonaniu polecenia xmllint zostanie wyświetlona informacja o poprawności pliku XML. Jeśli
plik jest zgodny ze schematem, nie zobaczysz żadnych komunikatów. W przypadku błędów komunikaty o błędach
zostaną wyświetlone w terminalu, wskazując na konkretne problemy w pliku XML.
Uzyskanie dostępu do integracji poprzez API
Po zakończeniu rejestracji Twojego konta otrzymasz od GUNB identyfikator przypisany
do Twojej organizacji, który będzie jednym z niezbędnych parametrów podczas
konfiguracji połączeń z API.
Wysłanie pliku
W celu przekazania danych wystarczy wykonać zapytanie typu (test)
POST:
email_sending opcjonalny parametr przyjmujący wartości tak lub nie (gdzie nie jest
wartością domyślną) decydujący o wysyłaniu do użytkownika e-maila na wskazany przez
niego w pliku adres wraz z wynikami walidacji
token aktualny token ze strony GUNB
Wysłanie pojedynczego zapytania możliwe jest np. z poziomu aplikacji Postman.
W odpowiedzi na żądanie użytkownik otrzyma informację o
przydzielonej sesji zasilenia.
Identyfikator sesji pozwala na późniejsze sprawdzenie wyniku walidacji. W odpowiedzi
znajduje się również gotowy link do usługi umożliwiającej wyświetlenie raportu z
walidacji. Czas przetwarzania danych zależy od wielkości przesłanego pliku, jednak nie
powinien przekraczać kilku minut.
Przykład odpowiedzi
[ {
"session_id": "33e55e97-5f4b-4230-8bd8-412d9c2c260ad",
"user_id": "885g06d5a352b67bb4b3ee9111bf19sb8a7014c9",
"file_name": "finansowanie_v4.xml",
"report_link": "https://zone-test-
fme.gunb.gov.pl/fmedatastreaming/Uniwersalne_API_data_upload/report_download.fm
w?user_id=gunb88921481&id_sesji=33e55e9217-5f4b-4230-8bd8-412d9c2c26350ad
&token=99140591b5904d5d51e3c9ecf60d2c453d27a075",
"file_body": "<?xml version (...)"
}]
Wyniki walidacji
Wyniki procesu walidacji można sprawdzić za pomocą żądania, które
jest dołączone
jako report_link w odpowiedzi zwracanej podczas przesyłania danych.
W odpowiedzi użytkownik otrzyma raport w formacie JSON zawierający
informacje o
identyfikatorze pliku przesłanego do importu oraz status walidacji. W przypadku
wykrycia niepoprawności w danych raport będzie zawierał również komunikat
wskazujący na możliwą przyczynę błędu.
{
"id" : "44c3cd5a-1a6f-4345-9f9e-d2367422",
"status" : "odrzucony",
"process" : "weryfikacja id",
"reason" : "id rekordu do usunięcia nie istnieje w bazie danych"
},
Do czasu wygenerowania przez system finalnego raportu z walidacji
możesz otrzymać
następujący komunikat „Plik w trakcie generowania spróbuj później” – po kilku minutach
w jego miejscu powinny pojawić się wyniki walidacji.
Jeżeli w zapytaniu przesyłającym dane wybrana została opcja
email_sending z wartością „tak”, na e-mail wskazany w pliku jako adres zwrotny trafi dodatkowy raport z
podsumowaniem i detalami dla zwolenników widoku tabelarycznego zamiast struktury JSON.
Podsumowanie
Proces integracji z systemem CEEB
Aby zintegrować się z systemem CEEB, należy wykonać poniższe kroki:
Wystąpić z wnioskiem o możliwość przekazywania do Centralnej Ewidencji Emisyjności Budynków danych poprzez
API.
Przygotować dane – muszą być zgodne ze strukturą wymaganą przez system (XSD do pobrania), która została udostępniona na stronie wraz z przykładami poprawnych
zapytań (Pliki do Pobrania)
Przesłać plik z danymi.
Sprawdzić wyniki walidacji.
Ponowić kroki 2-4 lub przekazać dane z pośrednictwem aplikacji webowej.