Poland KRS Board Members & Shareholders Scraper
Pricing
from $5.00 / 1,000 company processeds
Poland KRS Board Members & Shareholders Scraper
Extract full non-anonymized board member & shareholder names from Polish KRS (National Court Register). The official API censors names to "L******" — this actor downloads the public PDF extract with complete names, roles, and company metadata.
Pricing
from $5.00 / 1,000 company processeds
Rating
0.0
(0)
Developer
getregdata
Maintained by CommunityActor stats
0
Bookmarked
32
Total users
5
Monthly active users
2 days ago
Last modified
Categories
Share
Poland KRS Board Members Scraper | Zarzad spolki - pelne dane z KRS
Get the full, non-anonymized names of board members, supervisory board, prokurenci (proxies), shareholders and partners from Poland's National Court Register (KRS), plus the representation rule (sposób reprezentacji) - for every legal form: sp. z o.o., S.A., P.S.A., sp.j., sp.k., S.K.A., spółdzielnia, fundacja, stowarzyszenie, foreign branch (oddział). The official KRS API returns names censored to L****** - this actor reads the official public KRS extract, which carries the complete names, and parses it into structured JSON. Beyond what the API gives you, in bulk.
No login, no API key, nothing to configure - paste a KRS number and get the real names back.
What data do you get?
One record per company, with the people who actually run it:
{"krs": "0000006865","companyName": "CD PROJEKT RED SPÓŁKA AKCYJNA","legalForm": "SPÓŁKA AKCYJNA","nip": "7342867148","regon": "492707333","address": "ul. JAGIELLOŃSKA, nr 74, lok. ---, miejsc. WARSZAWA, kod 03-301, poczta WARSZAWA, kraj POLSKA","registrationDate": "06.04.2001","representationBody": "ZARZĄD","representationMethod": "W PRZYPADKU ZARZĄDU JEDNOOSOBOWEGO DO REPREZENTOWANIA SPÓŁKI UPOWAŻNIONY JEST JEDNOOSOBOWO CZŁONEK ZARZĄDU. W PRZYPADKU POWOŁANIA ZARZĄDU WIELOOSOBOWEGO ...","boardMembers": [{ "fullName": "PIOTR MARCIN NIELUBOWICZ", "firstName": "PIOTR MARCIN", "surname": "NIELUBOWICZ", "role": "CZŁONEK ZARZĄDU", "isCurrent": true },{ "fullName": "ADAM KONRAD BADOWSKI", "firstName": "ADAM KONRAD", "surname": "BADOWSKI", "role": "CZŁONEK ZARZĄDU", "isCurrent": true }],"supervisoryBoard": [{ "fullName": "MARCIN PIOTR IWIŃSKI", "firstName": "MARCIN PIOTR", "surname": "IWIŃSKI", "role": null, "organ": "RADA NADZORCZA", "isCurrent": true }],"proxies": [{ "fullName": "ARKADIUSZ MAREK TROJANOWSKI", "firstName": "ARKADIUSZ MAREK", "surname": "TROJANOWSKI", "proxyType": "ŁĄCZNA Z INNYM PROKURENTEM LUB CZŁONKIEM ZARZĄDU", "isCurrent": true }],"otherRepresentatives": [],"shareholders": [],"shareCapital": "99 910 510,00 PLN","extractDate": "24.08.2026","extractType": "aktualny"}
(Arrays shortened. A sp. z o.o. also returns its shareholders, e.g. { "fullName": "JAN KOWALSKI", "role": "WSPÓLNIK", "shares": "100 UDZIAŁÓW O ŁĄCZNEJ WYSOKOŚCI 5000,00 ZŁ", "isEntity": false, ... }; a sp.k. returns each partner with role KOMPLEMENTARIUSZ or KOMANDYTARIUSZ.)
Extract types
extractType: "aktualny" (default) returns the officers currently in office. Every person is
returned with isCurrent: true.
extractType: "pelny" returns the full history - everyone who has ever served, each flagged
with isCurrent. Historical entries are the ones the register has struck out. For CD Projekt
(KRS 0000006865) the full extract returns 34 board members of whom 7 are current, and 49
supervisory board members of whom 5 are current; the current set matches the aktualny extract
exactly. Filter on isCurrent if you only want the sitting board.
| Field | Description |
|---|---|
krs / nip / regon | Court-registry, tax, and statistical IDs |
companyName / legalForm | Full legal name and form |
address / registrationDate | Registered address and KRS registration date |
representationBody / representationMethod | The representing body (Zarząd, Rada Dyrektorów, Wspólnicy) and the representation rule - who may sign for the entity |
boardMembers[] | Representatives with fullName, firstName, surname, role: the management board, or the representing partners of a sp.j./sp.k., the komplementariusz of an S.K.A., the head of a SPZOZ |
supervisoryBoard[] | Members of every supervisory organ (Rada Nadzorcza, Komisja Rewizyjna, Rada Fundacji), with the organ name |
proxies[] | Prokurenci with fullName and proxyType (prokura samoistna, łączna, oddzielna ...) |
otherRepresentatives[] | Attorneys registered in KRS (pełnomocnicy of a spółdzielnia) and people representing a foreign company's branch |
shareholders[] | Owners named in the register: shareholders of a sp. z o.o. (with shares), partners of a sp.j./sp.k./sp.p. (role KOMPLEMENTARIUSZ / KOMANDYTARIUSZ), the sole shareholder of an S.A. A company holder has isEntity: true and its krs |
shareCapital | Share capital amount |
extractDate / extractType | Extract date and type (aktualny = current, pelny = full history) |
How much does it cost?
Pay per result - you are not charged for Apify platform usage, only a fixed price per company. The price drops on higher Apify subscription tiers.
| Volume | Cost |
|---|---|
| 1 company | $0.008 |
| 100 companies | ~$0.81 |
| 1,000 companies | ~$8.01 |
| 10,000 companies | ~$80.01 |
Plus a $0.005 start fee per run. Apify's $5 monthly free credit covers ~625 companies. No subscription, no minimum.
Is it legal, and where does the data come from?
Data comes from the official KRS register at wyszukiwarka-krs.ms.gov.pl, maintained by Poland's Ministry of Justice. Board-member and shareholder names are published as public data under the KRS Act (Ustawa o KRS, art. 4 ust. 4aa) - the register exists precisely so the public can see who runs a company. Extraction of this public data is permitted; you remain responsible for lawful, GDPR-compliant use downstream. PESEL numbers are present in the source extract but are deliberately excluded from the output.
How do I use it?
Click Try it and paste this input:
{ "krsNumbers": ["0000006865"] }
Pass many KRS numbers in krsNumbers to enrich a whole list in one run. Set extractType: "pelny" for the full history instead of the current state.
Input options
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
krsNumbers | string[] | Yes | - | List of KRS numbers to look up |
extractType | string | No | aktualny | aktualny = current state, pelny = full history |
What you can do with it
- B2B prospecting - turn a list of KRS numbers into named decision-makers (Prezes, Wiceprezes) for sales outreach.
- Due diligence - verify exactly who runs a company, with roles, before doing business.
- KYC / KYB - capture directors and shareholders for a compliance file, with the real names the API hides.
- Management research - analyze the leadership of Polish companies at scale.
- Change tracking - re-run over a portfolio and detect board changes.
Run it from code
# cURL - start a run and get the dataset backcurl -X POST "https://api.apify.com/v2/acts/regdata~krs-fullnames-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{ "krsNumbers": ["0000006865"] }'
// Node.js - apify-clientimport { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_TOKEN' });const run = await client.actor('regdata/krs-fullnames-scraper').call({ krsNumbers: ['0000006865'] });const { items } = await client.dataset(run.defaultDatasetId).listItems();
# Python - apify-clientfrom apify_client import ApifyClientclient = ApifyClient("YOUR_TOKEN")run = client.actor("regdata/krs-fullnames-scraper").call(run_input={"krsNumbers": ["0000006865"]})items = client.dataset(run["defaultDatasetId"]).list_items().items
Integrations
Runs anywhere Apify does: call it from the REST API, schedule recurring board pulls, pipe results into n8n / Make / Zapier, or use it from any MCP client (Claude, Cursor) via mcp.apify.com.
FAQ
How is this different from the official KRS API? The official API censors personal names (L******, S********). This actor reads the official public KRS extract, which carries the complete first names and surnames, and returns them structured.
Is it legal? Yes. Board and shareholder names are public data under the KRS Act. Extraction of public data is permitted; you remain responsible for lawful, GDPR-compliant use downstream.
Do I need a KRS account or API key? No. No login, no key, nothing to configure - just an Apify account.
Do you return PESEL numbers? No. PESEL appears in the source extract but is deliberately excluded from the output.
Current board vs full history? extractType: "aktualny" (default) returns the current state; "pelny" returns the full historical record.
What export formats are supported? JSON, CSV, Excel, or XML, or read live via the API.
Limitations
- Works for entities registered in KRS only (both the business register and the associations/foundations register).
- The KRS register lists a shareholder of a sp. z o.o. only when they hold at least 10% of the share capital, and does not list the shareholders of an S.A. except a sole shareholder; the actor returns exactly what the register names.
- PESEL numbers are intentionally not collected.
Related actors
Part of a suite of official government registry actors - no public API to build or maintain, pay per result, nothing to configure.
| Country | Actors |
|---|---|
| Poland | BDO · CRBR · KRS (financials) · EKW · KNF · KRS (board) (this actor) · KRZ · MSiG · KYB check · PEP (Sejm) · REGON (sites) · REGON · UOKiK |
| Germany | Insolvenzbekanntmachungen · Handelsregister |
| Spain | BORME · Registro Mercantil · Registro Público Concursal |
| Italy | INI-PEC · Registro Imprese |
| Austria | Ediktsdatei · WKO |
| France | Societe.com |
| Belgium | KBO / BCE |
| Czechia | ISIR |
| Slovakia | RPVS |
| Cyprus | DRCOR |
| Ireland | CRO |
| Portugal | Publicações MJ |
| Nigeria | CAC |
| Colombia | RUES |
| USA | California SoS · California UCC |
| UAE | ADGM |
| Global | Adverse media |
Common combinations: company register -> UBO -> insolvency/debtors -> adverse media is the standard KYB/onboarding chain.
For Poland that whole chain is one call: Poland KYB Risk Check takes a NIP or KRS and returns identity, beneficial owners and insolvency - screened against the company and every beneficial owner - as a single verdict. The component registry lookups it runs bill as usual, plus a small orchestration fee.
Full suite: apify.com/regdata · Callable from any MCP client via mcp.apify.com
Informacje po polsku
Czym jest ten aktor?
Ten aktor pobiera pelne, niezanonimizowane dane czlonkow zarzadu z Krajowego Rejestru Sadowego (KRS). Oficjalne API KRS zwraca dane osobowe zanonimizowane - zamiast imion i nazwisk widzisz L******. Ten aktor korzysta z oficjalnego, publicznego odpisu KRS, ktory zawiera pelne dane osobowe, i przetwarza go na ustrukturyzowany JSON.
Dla kogo?
Dla zespolow sprzedazy B2B szukajacych osob decyzyjnych (prezesow, wiceprezesow, czlonkow zarzadu), dzialow compliance realizujacych due diligence i weryfikacje beneficjentow, kancelarii prawnych oraz analitykow KYC/AML. To narzedzie do prospectingu B2B w Polsce - od numeru KRS do gotowej listy kontaktow.
Co otrzymujesz?
Dla kazdego numeru KRS: nazwe firmy, NIP, REGON, adres, date rejestracji, kapital zakladowy, a przede wszystkim zarzad z imionami, nazwiskami i funkcjami, prokurentow z rodzajem prokury, sposob reprezentacji, sklad rady nadzorczej (lub komisji rewizyjnej) oraz wspolnikow - w tym komplementariuszy i komandytariuszy spolek osobowych. Dziala dla kazdej formy prawnej: sp. z o.o., S.A., P.S.A., sp.j., sp.k., S.K.A., spoldzielnia, fundacja, stowarzyszenie, oddzial zagranicznego przedsiebiorcy. Numery PESEL nie sa zbierane (zgodnie z RODO). Bez subskrypcji - placisz wylacznie za uzycie.
Pelne dane osobowe z KRS - zarzad, prokurenci, rada nadzorcza, wspolnicy
Pobranie pelnych (nieanonimizowanych) imion i nazwisk czlonkow zarzadu, rady nadzorczej i wspolnikow z KRS. Oficjalne API cenzuruje imiona i nazwiska (np. "L******"). Ten aktor korzysta z publicznego odpisu KRS i parsuje kompletne dane osobowe do formatu JSON. Idealne do prospectingu B2B, due diligence i KYC/AML.