Przejdź do treści
z-dykty.pl

API z-dykty.pl

Przetargi, umowy, uchwały i budżety gmin — te same dane, które napędzają serwis. Pełna specyfikacja: openapi.json.

Klucz

Klucz wydajesz w panelu firmowym. Pokazujemy go raz — przechowujemy wyłącznie skrót, więc nie odzyskamy go za Ciebie.

curl https://z-dykty.pl/api/v1/przetargi?gmina=1261011 \
  -H "Authorization: Bearer zd_live_..."

Odwołanie klucza zaczyna obowiązywać do minuty — weryfikację buforujemy, żeby nie dokładać zapytania do bazy przy każdym Twoim żądaniu.

Stronicowanie

Kursorowe. Parametru offset nie ma i nie będzie: warstwa danych ucina odpowiedź na 1000 wierszach bez błędu, więc offset gubiłby rekordy w sposób nie do odróżnienia od braku danych w źródle.

Przekaż nastepny_kursor z poprzedniej odpowiedzi jako ?kursor=. Brak kursora w odpowiedzi znaczy koniec zbioru. Domyślnie 100 rekordów na stronę, maksymalnie 500.

Zasoby

GET /api/v1/przetargi

Ogłoszenia i wyniki postępowań z Biuletynu Zamówień Publicznych.

Filtry

  • gmina
  • gminy
  • wojewodztwo
  • nip
  • rodzaj
  • typ
  • od
  • do
  • kwota_min
  • dodane_od
  • fraza

GET /api/v1/umowy

Umowy z Centralnego Rejestru Umów jednostek sektora finansów publicznych.

Filtry

  • gmina
  • gminy
  • wojewodztwo
  • nip
  • od
  • do
  • kwota_min
  • dodane_od
  • fraza

GET /api/v1/uchwaly

Akty prawa miejscowego z wojewódzkich dzienników urzędowych (metadane).

Filtry

  • gmina
  • gminy
  • wojewodztwo
  • poziom
  • rodzaj
  • status
  • rok
  • od
  • do
  • dodane_od
  • fraza

GET /api/v1/jst

Słownik gmin, powiatów i województw. Wszystkie pozostałe zasoby są kluczowane kodem TERYT, więc zacznij tutaj.

GET /api/v1/finanse/{teryt}

Budżet gminy w podziale na działy i wskaźniki roczne. Dane budżetowe pochodzą ze sprawozdań MF, wskaźniki z BDL — a BDL jest o rok za sprawozdaniami, więc oba zbiory zwracamy osobno, zamiast sugerować porównywalność.

Limity i błędy

  • 401 — klucz nieznany, odwołany albo wygasły.
  • 402 — dostęp organizacji wstrzymany. Osobno od 403, żeby było jasne, że to nie kwestia uprawnień do zasobu.
  • 429 — limit minutowy albo wyczerpany pakiet miesięczny. Nagłówek Retry-After mówi, kiedy spróbować ponownie.

Każdy błąd niesie id_zadania — podaj je w zgłoszeniu, znajdziemy konkretne żądanie w logu.

Webhooki

Zamiast odpytywać API, możesz dostawać zdarzenia. Nagłówek X-ZD-Sygnatura ma postać t=<sekundy>,v1=<hmac>; policz HMAC-SHA256 z ciągu <t>.<surowe ciało>. Znacznik czasu jest częścią podpisu — odrzucaj żądania starsze niż 5 minut.