KRS (Poland)

GET/v0/pl/krs

Validates Polish National Court Register (Krajowy Rejestr Sądowy) numbers. A KRS number is a unique 10-digit sequential identifier assigned to entities registered in Poland. The input may be provided with or without leading zeros — the response always returns the canonical zero-padded 10-digit form. Optionally fetches live entity data from the official Polish government KRS API. The lookup first searches the Register of Entrepreneurs (P); if not found, it automatically tries the Register of Associations (S). The response indicates in which register the entity was found via the registry field.

Guides: Node.js · Python

Try it

Query Parameters

ParameterTypeRequiredDescription
valuestringYesThe KRS number to validate. Accepts 1–10 digits (with or without leading zeros).
lookupbooleanNoWhen true, performs a live lookup against the official Polish KRS government API and returns entity details.

Example Request

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.isvalid.dev/v0/pl/krs?value=0000896246&lookup=true"

Response Fields

FieldTypeDescription
validbooleanWhether the value is a valid KRS number
numberstringCanonical zero-padded 10-digit KRS number
krsobjectLive lookup result. Present only when lookup=true. See The krs object below.

The krs object

When the lookup failed (checked: false):

FieldTypeDescription
checkedbooleanfalse
reasonstringunavailable — the government KRS API could not be reached

When the lookup succeeded (checked: true):

FieldTypeDescription
checkedbooleantrue
foundbooleanWhether the entity was found in either register
krsstring | nullCanonical KRS number as returned by the government API
registrystring | nullRegister in which the entity was found: P — Register of Entrepreneurs (Rejestr Przedsiębiorców), S — Register of Associations (Rejestr Stowarzyszeń).null when found is false.
namestring | nullRegistered name of the entity
legalFormstring | nullLegal form (e.g. SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ)
nipstring | nullTax identification number (NIP)
regonstring | nullStatistical identification number (REGON)
hasOppStatusboolean | nullWhether the entity holds Public Benefit Organisation (OPP) status
registeredAtstring | nullDate of registration in the KRS (ISO 8601, YYYY-MM-DD)
dataAsOfstring | nullDate the returned data is valid as of (ISO 8601, YYYY-MM-DD)
lastEntryAtstring | nullDate of the most recent entry in the register (ISO 8601, YYYY-MM-DD)
addressobject | nullRegistered address with fields: city, voivodeship, street, houseNumber, flatNumber, postalCode, country, website

Example Response

{
  "valid": true,
  "number": "0000896246",
  "krs": {
    "checked": true,
    "found": true,
    "krs": "0000896246",
    "registry": "P",
    "name": "CREACT.DEV SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ",
    "legalForm": "SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ",
    "nip": "5252859428",
    "regon": "388770013",
    "hasOppStatus": false,
    "registeredAt": "2021-04-21",
    "dataAsOf": "2026-01-15",
    "lastEntryAt": "2026-01-14",
    "address": {
      "city": "WARSZAWA",
      "voivodeship": "MAZOWIECKIE",
      "street": "UL. ŚWIĘTOKRZYSKA",
      "houseNumber": "30",
      "flatNumber": "63",
      "postalCode": "00-116",
      "country": "POLSKA",
      "website": "HTTPS://CREACT.DEV/"
    }
  }
}