datagrit

datagrit › Company data › Poland KRS New Company Registrations Feed

Company data

Poland KRS New Company Registrations Feed

Newly registered Polish companies, foundations and associations from the official KRS court register: NIP, address, PKD, capital, email, with filters and change detection.

Run it on Apify StoreUse the APIfrom $10.50 per 1,000 results + $10 per run · no code needed
from $10.50 per 1,000 results + $10 per runpay only for company records you get
JSON · CSV · Excelexport or call via API
Scheduled runsdaily or weekly feeds with Apify schedules
v0.2updated 2026-09-30

Get a list of Polish companies, foundations and associations that were just registered in the official KRS court register. Every row carries the KRS number, name, legal form, registered address, PKD activity code, share capital and, when the entity published them, an email address, a website, NIP and REGON. It is built for B2B sales teams, accountants, banks, insurers, KYB analysts and service providers who follow new Polish companies from their first days.

Instead of looking up companies one by one by KRS number, you pick a date window and the Actor returns everything first registered in it. You can narrow the feed by legal form, voivodeship, city, activity code, name keyword, share capital, published email and published website.

What you can use it for

Pricing

You pay per entity returned. Pricing depends on your Apify plan: a small fee when a run starts, then a price per result that is lower on paid plans. The Apify free plan includes monthly credit you can use to try the feed on real data. Duplicates and status rows for runs without results are never charged. Set a maximum spend in the run options and the Actor stops when it is reached.

Output fields

Every result is one flat record, so it drops straight into a spreadsheet, a database or a CRM.

FieldTypeDescriptionExample
krsstringTen-digit KRS number, the primary key of the entity.0001269391
registerstringP = register of entrepreneurs, S = register of associations and foundations.P
namestringRegistered name of the entity.LEARNLY SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ
legalFormstringLegal form as written in the register (Polish).SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ
legalFormTypestringNormalised legal form: llc, joint-stock, simple-joint-stock, general-partnership, limited-partnership, limited-joint-stock-partnership, professional-partnership, foundation, association, cooperative or other.llc
nipstringTen-digit Polish tax number. Often null for entities registered in the last days.5252999999
regonstringNine- or fourteen-digit statistical number. Often null for entities registered in the last days.389999999
registrationDatestringDate of the first KRS entry, YYYY-MM-DD.2026-09-29
isNewRegistrationbooleanTrue when the registration date falls inside the requested date window; false for existing entities returned in "All changes" mode.true
lastEntryDatestringDate of the most recent KRS entry, YYYY-MM-DD.2026-09-29
lastEntryNumberintegerSequence number of the most recent entry.1
streetstringStreet of the registered seat.ul. Przykładowa
buildingNumberstringBuilding number of the registered seat.12
unitNumberstringUnit or office number of the registered seat.4
postalCodestringPostal code of the registered seat.70-001
citystringCity of the registered seat address.SZCZECIN
municipalitystringGmina of the seat.M. SZCZECIN
countystringPowiat of the seat.SZCZECIN
voivodeshipstringVoivodeship of the seat, uppercase Polish name.ZACHODNIOPOMORSKIE
countrystringCountry of the address.POLSKA
emailstringEmail address published in the register, lowercase, exactly as the entity entered it (for small companies it can contain the name of a person). Null when the entity did not publish one.kontakt@example.pl
websitestringWebsite address published in the register, with the host in lowercase. Null when missing or not a valid address.example.pl
shareCapitalnumberShare capital (or fund capital) amount. Null for entities without one, such as associations and most partnerships.5000
capitalCurrencystringCurrency of the share capital.PLN
mainPkdCodestringPredominant activity in the Polish PKD classification.85.59.B
mainPkdDescriptionstringPolish description of the predominant activity.POZOSTAŁE POZASZKOLNE FORMY EDUKACJI, GDZIE INDZIEJ NIESKLASYFIKOWANO
additionalPkdCodesarrayOther declared activities, deduplicated.["62.01.Z","63.11.Z"]
boardBodyNamestringName of the body that represents the entity, for example ZARZĄD.ZARZĄD
boardMembersCountintegerNumber of people in the representing body. Names are masked by the register, so only the count is returned.2
supervisoryBoardMembersCountintegerNumber of people in supervisory bodies (null when the entity has none).3
representationRulestringRule describing who may represent the entity, in Polish.DO SKŁADANIA OŚWIADCZEŃ W IMIENIU SPÓŁKI UPRAWNIONY JEST KAŻDY CZŁONEK ZARZĄDU S
shareholdersCountintegerNumber of shareholders or partners listed. Names are masked, so only the count is returned.2
soleOwnerbooleanTrue when one shareholder owns all shares.false
sourceUrlstringOfficial KRS API address of the extract this row was built from.https://api-krs.ms.gov.pl/api/krs/OdpisAktualny/0001269391?rejestr=P&format=
foundbooleanTrue for a real entity; false for the single status row returned when nothing matched.true
scrapedAtstringTime the row was produced, ISO 8601.2026-09-30T08:00:00.000Z

Sample record

{
  "krs": "0001269391",
  "register": "P",
  "name": "LEARNLY SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ",
  "legalForm": "SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ",
  "legalFormType": "llc",
  "nip": "5252999999",
  "regon": "389999999",
  "registrationDate": "2026-09-29",
  "isNewRegistration": true,
  "lastEntryDate": "2026-09-29",
  "lastEntryNumber": 1,
  "street": "ul. Przykładowa",
  "buildingNumber": "12",
  "unitNumber": "4",
  "postalCode": "70-001",
  "city": "SZCZECIN",
  "municipality": "M. SZCZECIN",
  "county": "SZCZECIN",
  "voivodeship": "ZACHODNIOPOMORSKIE",
  "country": "POLSKA",
  "email": "kontakt@example.pl",
  "website": "example.pl",
  "shareCapital": 5000,
  "capitalCurrency": "PLN",
  "mainPkdCode": "85.59.B",
  "mainPkdDescription": "POZOSTAŁE POZASZKOLNE FORMY EDUKACJI, GDZIE INDZIEJ NIESKLASYFIKOWANO",
  "additionalPkdCodes": [
    "62.01.Z",
    "63.11.Z"
  ],
  "boardBodyName": "ZARZĄD",
  "boardMembersCount": 2,
  "supervisoryBoardMembersCount": 3,
  "representationRule": "DO SKŁADANIA OŚWIADCZEŃ W IMIENIU SPÓŁKI UPRAWNIONY JEST KAŻDY CZŁONEK ZARZĄDU SAMODZIELNIE",
  "shareholdersCount": 2,
  "soleOwner": false,
  "sourceUrl": "https://api-krs.ms.gov.pl/api/krs/OdpisAktualny/0001269391?rejestr=P&format=json",
  "found": true,
  "scrapedAt": "2026-09-30T08:00:00.000Z"
}

Input

FieldNameTypeWhat it does
modeModestring"New registrations" returns entities first entered in KRS inside the date window. "All changes" returns every entity that had any entry in the window (new registrations plus changes to existing entities).
daysBackWorking days backintegerHow many working days to look back (Monday to Friday, Polish public holidays excluded), counting today when it is a working day. The window runs from the earliest of those days to today, so weekend and holiday entries in between are included. 2 = today and the previous working day; on a Sunday that is Thursday to Sunday, on a Monday Friday to Monday. Maximum 15. Ignored when "From date" is set.
dateFromFrom datestringFirst day of the window, YYYY-MM-DD. The KRS API serves bulletins from January 2020 onwards. Leave empty to use "Working days back".
dateToTo datestringLast day of the window, YYYY-MM-DD (inclusive). Defaults to today. This Actor accepts windows of at most 31 days; split longer periods into several runs.
registersRegistersarray"P" is the register of entrepreneurs (companies, partnerships, cooperatives). "S" is the register of associations, foundations and other social organisations. Use ["P","S"] for both.
scanDepthScan depthstring"Complete" reads every entity with an entry in the window whose KRS number is among the newest 100,000 numbers in that window's bulletins (in "All changes" mode: every entity with an entry). New registrations get numbers close to the newest ones: on the fully read days 2026-09-25 and 2026-09-29, 575 of the 576 entities with a registration date on that day were within the newest 16,431 numbers; the exception was an entity with a number more than 500,000 below the newest and 21 register entries. "Recent" reads only the newest 3,000 numbers: much faster, and it returned 261 of the 267 registrations of 2026-09-29.
legalFormsLegal formsarrayKeep only these legal forms. Allowed: llc, joint-stock, simple-joint-stock, general-partnership, limited-partnership, limited-joint-stock-partnership, professional-partnership, foundation, association, cooperative, other.
voivodeshipsVoivodeshipsarrayKeep only entities with the registered seat in these voivodeships, for example MAZOWIECKIE or Łódzkie (case and Polish letters do not matter).
citiesCitiesarrayKeep only entities whose address is in one of these cities, for example Warszawa or Kraków.
pkdPrefixesPKD activity codesarrayKeep only entities whose activity code starts with one of these prefixes, for example 62 (IT), 62.01 or 47.91.Z. Which codes are checked depends on "PKD scope".
pkdScopePKD scopestring"Main" matches only the predominant activity. "Any" also matches the additional activities listed in the register.
nameKeywordsName keywordsarrayKeep only entities whose name contains at least one of these words, for example software or transport. Case and Polish letters do not matter.
minShareCapitalMinimum share capital (PLN)numberKeep only entities with a share capital of at least this amount. Entities without a capital (associations, partnerships) are dropped when this is set.
maxShareCapitalMaximum share capital (PLN)numberKeep only entities with a share capital of at most this amount. Entities without a capital are dropped when this is set.
onlyWithEmailOnly with emailbooleanReturn only entities that published an email address in the register.
onlyWithWebsiteOnly with websitebooleanReturn only entities that published a website address in the register.
sinceLastRunOnly new since last runbooleanSkip entities that earlier runs with the same settings already returned. The state is kept per combination of mode, registers, scan depth and all filters (the date window and "Maximum companies" do not count), in a key-value store named krs-feed-state in your account, for 45 days (35 in "All changes" mode). Only entities actually returned to you are remembered. Runs with other filters, and manual test runs with other settings, do not affect it.
maxItemsMaximum companiesintegerStop after this many entities. Also caps what the run can cost: you pay per entity returned.
proxyConfigurationProxy configurationobjectThe official KRS API is public and needs no proxy. Enable one only if your runs are blocked.

Call it from your code

Run the Actor and get the results in one request. Replace YOUR_APIFY_TOKEN with the token from your Apify account settings.

curl -X POST "https://api.apify.com/v2/acts/datagrit~poland-krs-new-companies/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"mode":"newRegistrations","daysBack":2,"scanDepth":"recent","maxItems":30}'
import { ApifyClient } from 'apify-client';

const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('datagrit/poland-krs-new-companies').call({
  "mode": "newRegistrations",
  "daysBack": 2,
  "scanDepth": "recent",
  "maxItems": 30
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items.length, items[0]);

Install with npm i apify-client.

from apify_client import ApifyClient
import os

client = ApifyClient(os.environ["APIFY_TOKEN"])
run = client.actor("datagrit/poland-krs-new-companies").call(run_input={
  "mode": "newRegistrations",
  "daysBack": 2,
  "scanDepth": "recent",
  "maxItems": 30
})
items = client.dataset(run["defaultDatasetId"]).list_items().items
print(len(items), items[0] if items else None)

Install with pip install apify-client.

Try Poland KRS New Company Registrations Feed on Apify

Related Actors

Company data

French Company Finder - Sirene Financials

French company lead lists from Sirene screened by net result and revenue, with net margin, size, matching establishment and optional directors.

from $5.60 / 1,000 results
Jobs & salaries

Career Site Jobs Aggregator - ATS Salary Data

Open jobs from Greenhouse, Lever, Ashby, Workday, Workable, SmartRecruiters, Recruitee and Personio in one schema with normalized salaries.

from $2.80 / 1,000 results