Nowa siedziba, nowa nazwa, przekształcenie w inną formę prawną albo świeżo zarejestrowana spółka często oznaczają początek zakupów. API obserwuje spółki z Twojego CRM, przesyła zmianę z KRS i zwraca listę nowych spółek. Zawsze na poziomie firmy, nigdy z danymi osobowymi do marketingu.
Dla polskich spółek API zapisuje zmiany w rejestrze: nazwy, siedziby, formy prawnej i statusu. Zdarzenia są dostępne od 14 października 2026 r. Ich datą jest dzień, w którym zmiana po raz pierwszy pojawiła się w danych rejestru, a nie data wpisu do KRS.
| Zmiana w KRS | event_type | Dlaczego to ważne dla sprzedaży |
|---|---|---|
| Nowa siedziba | address_change | Nowe biuro, magazyn albo oddział: najem i wyposażenie, łącza, ochrona, sprzątanie, ubezpieczenie |
| Nowa nazwa | name_change | Zmiana marki albo właściciela: umowy, oferty i dane na fakturach trzeba zaktualizować, a dostawców często ocenia się od nowa |
| Zmiana formy prawnej | legal_form_change | Przekształcenie to nowa struktura, nowe umowy i zwykle nowe limity kredytowe |
| Likwidacja | liquidation | Wstrzymaj sprzedaż z odroczonym terminem płatności, sprawdź otwarte faktury, oznacz konto w CRM |
| Rozwiązanie, wykreślenie z rejestru | dissolution | Koniec relacji: zamknij konto i przestań planować sprzedaż |
| Upadłość | insolvency | Najpilniejszy sygnał dla kredytu kupieckiego i windykacji: przejrzyj należności i warunki dostaw |
W innych krajach częstym sygnałem jest zmiana w zarządzie albo podwyższenie kapitału. W Polsce tych zdarzeń nie ma: API działa na poziomie firmy, bez członków zarządu, a kapitał zakładowy jest w rekordzie spółki, ale jego zmiana nie tworzy zdarzenia. Nowych spółek nie szukasz w strumieniu zdarzeń, tylko przez founded_after (niżej).
Każdą spółkę z CRM znajdź raz po NIP, zapisz jej id, zasubskrybuj ją i trzymaj numer klienta z CRM w polu label: wraca w każdym alercie. Subskrypcja nie zużywa kredytów.
import requests
BASE = 'https://api.prometiam.com/functions/v1/risk-api'
H = {'Authorization': 'Bearer rk_live_...'}
konta = [('7740001454', 'crm-1001'), ('5261003187', 'crm-1002')] # NIP i numer klienta w CRM
for nip, id_crm in konta:
r = requests.get(f'{BASE}/companies/search', headers=H,
params={'country': 'PL', 'nip': nip})
r.raise_for_status()
wyniki = r.json()['data']
if wyniki:
requests.post(f'{BASE}/monitor', headers=H, json={
'company_id': wyniki[0]['id'],
'country': 'PL',
'label': id_crm, # wraca w każdym alercie
'events': ['corporate_event', 'status_change', 'dissolution'],
'webhook_url': 'https://twoja-domena.pl/hooki/prometiam',
}).raise_for_status()
Każdy alert przychodzi jako podpisany webhook. Nagłówek X-Prometiam-Signature zawiera sha256= i HMAC-SHA256 surowej treści żądania, obliczony z kluczem webhook_secret, który zwraca POST /monitor (pokazany raz, więc zapisz go). Sprawdź podpis, zanim założysz zadanie handlowcowi. Webhooki są w każdym planie; alerty odczytasz też z GET /monitor, więc wystarczy nocny skrypt.
import hashlib, hmac
def podpis_ok(cialo: bytes, naglowek: str, secret: str) -> bool:
"""cialo: surowa treść żądania; naglowek: X-Prometiam-Signature; secret: webhook_secret z POST /monitor."""
oczekiwany = 'sha256=' + hmac.new(secret.encode(), cialo, hashlib.sha256).hexdigest()
return hmac.compare_digest(naglowek, oczekiwany)
Zanim zadzwonisz, zobacz, co się zmieniło: GET /company-events/search?country=PL&company_number=0000028860 zwraca zdarzenia jednej spółki (tu ORLEN S.A.), od najnowszego, za 2 kredyty. Szukać można też po nazwie (company_name). Pusta lista znaczy tylko tyle, że od 14 października 2026 r. nie zauważyliśmy zmiany w rejestrze.
Gdy pominiesz nazwę i numer, to samo wywołanie jest strumieniem zdarzeń całego kraju: każda zmiana widoczna w danych rejestru, od najnowszej, z filtrem event_type. Okno sięga najwyżej 31 dni wstecz (domyślnie 7), a starsze date_from kończy się błędem 400. Skrypt dzienny lub tygodniowy, który czyta strumień i zostawia spółki z Twojego segmentu, znajdzie konta, których jeszcze nie obserwujesz. Segment ocenisz po mieście z new_value (przy zmianie siedziby) albo po rekordzie z GET /companies/{id}.
# Wszystkie zmiany siedziby zauważone w ostatnich 7 dniach, 100 zdarzeń na wywołanie # (date_from: najwyżej 31 dni wstecz, domyślnie 7 dni) curl 'https://api.prometiam.com/functions/v1/risk-api/company-events/search?country=PL&event_type=address_change&limit=100' \ -H 'Authorization: Bearer rk_live_...'
Wywołanie kosztuje 2 kredyty i zwraca do 100 zdarzeń, a kolejne strony pobierasz kursorem next_cursor. Zdarzenie niesie to, czego potrzebuje handlowiec:
| Pole | Co zawiera |
|---|---|
event_type, event_date | Rodzaj zmiany i dzień, w którym pojawiła się w danych rejestru |
previous_value, new_value | Wartość przed i po: nazwa, adres w jednym wierszu albo status (active, in_liquidation) |
company_id, company_number, company_name | Spółka: id do GET /companies/{id} i POST /monitor, numer KRS i nazwa |
signal_category | neutral dla siedziby i nazwy, distress dla likwidacji, rozwiązania i upadłości |
Rejestracja to pierwszy sygnał: nowa spółka potrzebuje rachunku, księgowości, ubezpieczenia, oprogramowania i biura. founded_after zwraca spółki założone od podanej daty, bez nazwy, strona po stronie (1 kredyt za wywołanie do 100 spółek), a founded_before zamyka okno. Rekord niesie formę prawną, siedzibę, województwo, kapitał zakładowy i kod PKD; na liście są też inne podmioty z KRS, na przykład fundacje, więc filtruj po legal_form. Filtra po PKD nie ma (parametr cnae jest tylko dla Hiszpanii, dla Polski API odpowiada 400), dlatego segment zawężasz we własnym kodzie.
import requests
BASE = 'https://api.prometiam.com/functions/v1/risk-api'
H = {'Authorization': 'Bearer rk_live_...'}
# Spółki założone od 12 października, od najnowszych (100 na wywołanie, kolejne strony: next_cursor)
r = requests.get(f'{BASE}/companies/search', headers=H,
params={'country': 'PL', 'founded_after': '2026-10-12', 'limit': 100})
r.raise_for_status()
# PKD 62: oprogramowanie i doradztwo IT; tylko sp. z o.o.
for f in r.json()['data']:
if (f['activity_code'] or '').startswith('62') and f['legal_form'] == 'sp. z o.o.':
print(f['founding_date'], f['company_name'], f['city'], f['region'])
director_change): API dla Polski nie zwraca członków zarządu ani wspólników.capital_amount) jest w rekordzie, ale jego zmiana nie wywołuje zdarzenia.previous_names) uzupełniamy stopniowo, więc wiele spółek nie ma ich jeszcze.Monitoring nie zużywa kredytów: plan ustala, ile spółek obserwujesz (3 w okresie próbnym, 25 w planie Starter, 250 w planie Professional i 2 500 w planie Scale; webhooki są w każdym planie). Wyszukanie spółek kosztuje 1 kredyt, a wyszukanie zdarzeń 2. Starter kosztuje 9,99 € miesięcznie za 1 000 kredytów, Professional 29,99 € za 10 000, a Scale 99,99 € za 50 000. Okres próbny trwa 14 dni i obejmuje 500 kredytów: wymaga karty, w jego trakcie nic nie jest pobierane, a potem obowiązuje Starter, jeśli nie anulujesz.
Dane o Polsce pochodzą z Krajowego Rejestru Sądowego (KRS) i są ustandaryzowane przez Prometiam. To nie jest odpis z rejestru; do celów prawnych korzystaj z odpisu oficjalnego.
Rozpocznij 14-dniowy darmowy okres próbny · Dokumentacja API
Okres próbny trwa 14 dni i obejmuje 500 kredytów. Wymagana jest karta, w trakcie okresu próbnego nic nie jest pobierane; potem obowiązuje plan Starter (9,99 € miesięcznie), jeśli go nie anulujesz.