From 697cc912bfa925b9e8619fd5a6c1e37af099bea7 Mon Sep 17 00:00:00 2001 From: Jakub Date: Fri, 19 Sep 2025 13:51:11 +0200 Subject: [PATCH 1/5] Update BIR version maps to 1.2 version (more info can be found: https://api.stat.gov.pl/Home/RegonApi) --- RegonAPI/consts/bir_version_maps.py | 83 ++++++++++++++++++++++++----- 1 file changed, 69 insertions(+), 14 deletions(-) diff --git a/RegonAPI/consts/bir_version_maps.py b/RegonAPI/consts/bir_version_maps.py index 178d58f..f519e73 100644 --- a/RegonAPI/consts/bir_version_maps.py +++ b/RegonAPI/consts/bir_version_maps.py @@ -21,81 +21,136 @@ "WSDL": "https://wyszukiwarkaregon.stat.gov.pl/wsBIR/wsdl/UslugaBIRzewnPubl-ver11-prod.wsdl", }, }, + "bir1.2": { # BIR1.2 + "TEST": { + "SERVICE_URL": "https://wyszukiwarkaregontest.stat.gov.pl/wsBIR/UslugaBIRzewnPubl.svc", + "WSDL": "https://wyszukiwarkaregontest.stat.gov.pl/wsBIR/wsdl/UslugaBIRzewnPubl-ver11-test.wsdl", + }, + "PROD": { + "SERVICE_URL": "https://wyszukiwarkaregon.stat.gov.pl/wsBIR/UslugaBIRzewnPubl.svc", + # No correction in version 1.1 + "WSDL": "https://wyszukiwarkaregon.stat.gov.pl/wsBIR/wsdl/UslugaBIRzewnPubl-ver11-prod.wsdl", + }, + }, } BIR_VERSIONS = BIR_SETTINGS.keys() OPERATIONS = { - "alias_search_data": {"bir1": "DaneSzukaj", "bir1.1": "DaneSzukajPodmioty"}, + "alias_search_data": {"bir1": "DaneSzukaj", "bir1.1": "DaneSzukajPodmioty", "bir1.2": "DaneSzukajPodmioty"}, "alias_data_download_full_report": { "bir1": "DanePobierzPelnyRaport", "bir1.1": "DanePobierzPelnyRaport", + "bir1.2": "DanePobierzPelnyRaport" }, "alias_data_download_full_group_report": { "bir1": NotImplementedError, "bir1.1": "DanePobierzRaportZbiorczy", + "bir1.2": "DanePobierzRaportZbiorczy" }, } # DanePobierzPelnyRaport - settings DANE_POBIERZ_PELNY_RAPORT_REPORT_NAMES = [ - {"bir1": "PublDaneRaportFizycznaOsoba", "bir1.1": "BIR11OsFizycznaDaneOgolne"}, + { + "bir1": "PublDaneRaportFizycznaOsoba", + "bir1.1": "BIR11OsFizycznaDaneOgolne", + "bir1.2": "BIR12OsFizycznaDaneOgolne" + }, { "bir1": "PublDaneRaportDzialalnoscFizycznejCeidg", "bir1.1": "BIR11OsFizycznaDzialalnoscCeidg", + "bir1.2": "BIR12OsFizycznaDzialalnoscCeidg", }, { "bir1": "PublDaneRaportDzialalnoscFizycznejRolnicza", "bir1.1": "BIR11OsFizycznaDzialalnoscRolnicza", + "bir1.2": "BIR12OsFizycznaDzialalnoscRolnicza" }, { "bir1": "PublDaneRaportDzialalnoscFizycznejPozostala", "bir1.1": "BIR11OsFizycznaDzialalnoscPozostala", + "bir1.2": "BIR12OsFizycznaDzialalnoscPozostala" }, { "bir1": "PublDaneRaportDzialalnoscFizycznejWKrupgn", "bir1.1": "BIR11OsFizycznaDzialalnoscSkreslonaDo20141108", + "bir1.2": "BIR12OsFizycznaDzialalnoscSkreslonaDo20141108" + }, + { + "bir1": "PublDaneRaportDzialalnosciFizycznej", + "bir1.1": "BIR11OsFizycznaPkd", + "bir1.2": "BIR12OsFizycznaPkd" }, - {"bir1": "PublDaneRaportDzialalnosciFizycznej", "bir1.1": "BIR11OsFizycznaPkd"}, { "bir1": "PublDaneRaportLokalneFizycznej", "bir1.1": "BIR11OsFizycznaListaJednLokalnych", + "bir1.2": "BIR12OsFizycznaListaJednLokalnych" + + }, + { + "bir1": "PublDaneRaportLokalnaFizycznej", + "bir1.1": "BIR11JednLokalnaOsFizycznej", + "bir1.2": "BIR12JednLokalnaOsFizycznej" }, - {"bir1": "PublDaneRaportLokalnaFizycznej", "bir1.1": "BIR11JednLokalnaOsFizycznej"}, { "bir1": "PublDaneRaportDzialalnosciLokalnejFizycznej", "bir1.1": "BIR11JednLokalnaOsFizycznejPkd", + "bir1.2": "BIR12JednLokalnaOsFizycznejPkd" + }, + { + "bir1": "PublDaneRaportPrawna", + "bir1.1": "BIR11OsPrawna", + "bir1.2": "BIR12OsPrawna" + + }, + { + "bir1": "PublDaneRaportDzialalnosciPrawnej", + "bir1.1": "BIR11OsPrawnaPkd", + "bir1.2": "BIR12OsPrawnaPkd" }, - {"bir1": "PublDaneRaportPrawna", "bir1.1": "BIR11OsPrawna"}, - {"bir1": "PublDaneRaportDzialalnosciPrawnej", "bir1.1": "BIR11OsPrawnaPkd"}, { "bir1": "PublDaneRaportLokalnePrawnej", "bir1.1": "BIR11OsPrawnaListaJednLokalnych", + "bir1.2": "BIR12OsPrawnaListaJednLokalnych" + }, + { + "bir1": "PublDaneRaportLokalnaPrawnej", + "bir1.1": "BIR11JednLokalnaOsPrawnej", + "bir1.2": "BIR12JednLokalnaOsPrawnej" + }, - {"bir1": "PublDaneRaportLokalnaPrawnej", "bir1.1": "BIR11JednLokalnaOsPrawnej"}, { "bir1": "PublDaneRaportDzialalnosciLokalnejPrawnej", "bir1.1": "BIR11JednLokalnaOsPrawnejPkd", + "bir1.2": "BIR12JednLokalnaOsPrawnejPkd" }, { "bir1": "PublDaneRaportWspolnicyPrawnej", "bir1.1": "BIR11OsPrawnaSpCywilnaWspolnicy", + "bir1.2": "BIR12OsPrawnaSpCywilnaWspolnicy" + }, + { + "bir1": "PublDaneRaportTypJednostki", + "bir1.1": "BIR11TypPodmiotu", + "bir1.2": "BIR12TypPodmiotu" }, - {"bir1": "PublDaneRaportTypJednostki", "bir1.1": "BIR11TypPodmiotu"}, ] # DanePobierzRaportZbiorczy - settings DANE_POBIERZ_RAPORT_ZBIORCZY_REPORT_NAMES = [ - {"bir1.1": "BIR11NowePodmiotyPrawneOrazDzialalnosciOsFizycznych"}, - {"bir1.1": "BIR11AktualizowanePodmiotyPrawneOrazDzialalnosciOsFizycznych"}, - {"bir1.1": "BIR11SkreslonePodmiotyPrawneOrazDzialalnosciOsFizycznych"}, - {"bir1.1": "BIR11NoweJednostkiLokalne"}, - {"bir1.1": "BIR11AktualizowaneJednostkiLokalne"}, - {"bir1.1": "BIR11SkresloneJednostkiLokalne"}, + {"bir1.1": "BIR11NowePodmiotyPrawneOrazDzialalnosciOsFizycznych", "bir1.2": "BIR11NowePodmiotyPrawneOrazDzialalnosciOsFizycznych"}, + {"bir1.1": "BIR11AktualizowanePodmiotyPrawneOrazDzialalnosciOsFizycznych", "bir1.2": "BIR11AktualizowanePodmiotyPrawneOrazDzialalnosciOsFizycznych"}, + {"bir1.1": "BIR11SkreslonePodmiotyPrawneOrazDzialalnosciOsFizycznych", "bir1.2": "BIR11SkreslonePodmiotyPrawneOrazDzialalnosciOsFizycznych"}, + {"bir1.1": "BIR11NoweJednostkiLokalne", "bir1.2": "BIR11NoweJednostkiLokalne"}, + {"bir1.1": "BIR11AktualizowaneJednostkiLokalne", "bir1.2": "BIR11AktualizowaneJednostkiLokalne" }, + {"bir1.1": "BIR11SkresloneJednostkiLokalne", "bir1.2": "BIR11SkresloneJednostkiLokalne"}, ] REPORTS = { "bir1": [x["bir1"] for x in DANE_POBIERZ_PELNY_RAPORT_REPORT_NAMES], "bir1.1": [x["bir1.1"] for x in DANE_POBIERZ_PELNY_RAPORT_REPORT_NAMES] + [x["bir1.1"] for x in DANE_POBIERZ_RAPORT_ZBIORCZY_REPORT_NAMES], + "bir1.2": [x["bir1.2"] for x in DANE_POBIERZ_PELNY_RAPORT_REPORT_NAMES] + + [x["bir1.2"] for x in DANE_POBIERZ_RAPORT_ZBIORCZY_REPORT_NAMES] } From 3c3a36a263fc8a90afe2d6242c6ec46016ee1247 Mon Sep 17 00:00:00 2001 From: Jakub Date: Fri, 19 Sep 2025 13:51:41 +0200 Subject: [PATCH 2/5] Added example of usage version 1.2 of REGON API --- examples/bir12_examples.py | 79 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 examples/bir12_examples.py diff --git a/examples/bir12_examples.py b/examples/bir12_examples.py new file mode 100644 index 0000000..b77ae50 --- /dev/null +++ b/examples/bir12_examples.py @@ -0,0 +1,79 @@ +from pprint import pprint + +from RegonAPI import RegonAPI +from RegonAPI.exceptions import ApiAuthenticationError + +# Available reports +REPORTS = [ + "BIR12OsFizycznaDaneOgolne", + "BIR12OsFizycznaDzialalnoscCeidg", + "BIR12OsFizycznaDzialalnoscRolnicza", + "BIR12OsFizycznaDzialalnoscPozostala", + "BIR12OsFizycznaDzialalnoscSkreslonaDo20141108", + "BIR12OsFizycznaPkd", + "BIR12OsFizycznaListaJednLokalnych", + "BIR12JednLokalnaOsFizycznej", + "BIR12JednLokalnaOsFizycznejPkd", + "BIR12OsPrawna", + "BIR12OsPrawnaPkd", + "BIR12OsPrawnaListaJednLokalnych", + "BIR12JednLokalnaOsPrawnej", + "BIR12JednLokalnaOsPrawnejPkd", + "BIR12OsPrawnaSpCywilnaWspolnicy", + "BIR12TypPodmiotu", +] + +TEST_API_KEY = "abcde12345abcde12345" +CD_PROJEKT_NIP = "7342867148" +CD_PROJEKT_KRS = "0000006865" +CD_PROJEKT_REGON9 = "492707333" + +# Authentication +api = RegonAPI( + bir_version="bir1.2", is_production=False, timeout=10, operation_timeout=10 +) +try: + api.authenticate(key=TEST_API_KEY) +except ApiAuthenticationError as e: + print("[-]", e) + exit(0) +except Exception as e: + raise + +# Search by NIP +result = api.searchData(nip=CD_PROJEKT_NIP) +pprint(result) + +# Search by KRS +result = api.searchData(krs=CD_PROJEKT_KRS) +pprint(result) + +# Search by REGON +result = api.searchData(regon=CD_PROJEKT_REGON9) +pprint(result) + +# Get all reports by REGON +for report_name in REPORTS: + result = api.dataDownloadFullReport(CD_PROJEKT_REGON9, report_name) + print("\n[*] Report:\n", report_name) + pprint(result) + +# Group reports + +GROUP_REPORTS = [ + "BIR11NowePodmiotyPrawneOrazDzialalnosciOsFizycznych", + "BIR11AktualizowanePodmiotyPrawneOrazDzialalnosciOsFizycznych", + "BIR11SkreslonePodmiotyPrawneOrazDzialalnosciOsFizycznych", + "BIR11NoweJednostkiLokalne", + "BIR11AktualizowaneJednostkiLokalne", + "BIR11SkresloneJednostkiLokalne", +] + +# It's better to fetch group reports using your own API key +print("\n[!] It's better to fetch group reports using your own API key") +exit(0) + +for group_report_name in GROUP_REPORTS: + result = api.dataDownloadFullGroupReport("2021-04-16", group_report_name) + print("\n[*] Group Report:\n", group_report_name) + pprint(result) From 92ac9905da9986387bd9e450802a1ea6617d3c02 Mon Sep 17 00:00:00 2001 From: Jakub Date: Fri, 19 Sep 2025 14:06:20 +0200 Subject: [PATCH 3/5] Updated README.MD --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 9f27ea1..8e9ff2c 100644 --- a/README.md +++ b/README.md @@ -46,7 +46,7 @@ ### Features -- Supports **BIR v1** and **BIR v1.1** +- Supports **BIR v1**, **BIR v1.1** and **BIR v1.2** - Searching for information about business entities by: - **KRS** number/s - **NIP** number/s @@ -175,6 +175,7 @@ Result of the above code All report names used by function dataDownloadFullReport are listed here or in API documentation. ### API documentation +- [BIR Version 1.2 Documentation](https://api.stat.gov.pl/Home/RegonApi) - [BIR Version 1.1 Documentation](https://api.stat.gov.pl/Home/RegonApi) - [BIR Version 1 Documentation](https://api.stat.gov.pl/Home/RegonApi) From 4081a63b4ae6a7f5c9e576994fecedd79771bee7 Mon Sep 17 00:00:00 2001 From: Jakub Date: Fri, 19 Sep 2025 14:17:07 +0200 Subject: [PATCH 4/5] Added example of BIR 1.2 version --- README.md | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 8e9ff2c..4a8c1e2 100644 --- a/README.md +++ b/README.md @@ -73,22 +73,22 @@ from RegonAPI.exceptions import ApiAuthenticationError # Available reports REPORTS = [ - "BIR11OsFizycznaDaneOgolne", - "BIR11OsFizycznaDzialalnoscCeidg", - "BIR11OsFizycznaDzialalnoscRolnicza", - "BIR11OsFizycznaDzialalnoscPozostala", - "BIR11OsFizycznaDzialalnoscSkreslonaDo20141108", - "BIR11OsFizycznaPkd", - "BIR11OsFizycznaListaJednLokalnych", - "BIR11JednLokalnaOsFizycznej", - "BIR11JednLokalnaOsFizycznejPkd", - "BIR11OsPrawna", - "BIR11OsPrawnaPkd", - "BIR11OsPrawnaListaJednLokalnych", - "BIR11JednLokalnaOsPrawnej", - "BIR11JednLokalnaOsPrawnejPkd", - "BIR11OsPrawnaSpCywilnaWspolnicy", - "BIR11TypPodmiotu", + "BIR12OsFizycznaDaneOgolne", + "BIR12OsFizycznaDzialalnoscCeidg", + "BIR12OsFizycznaDzialalnoscRolnicza", + "BIR12OsFizycznaDzialalnoscPozostala", + "BIR12OsFizycznaDzialalnoscSkreslonaDo20141108", + "BIR12OsFizycznaPkd", + "BIR12OsFizycznaListaJednLokalnych", + "BIR12JednLokalnaOsFizycznej", + "BIR12JednLokalnaOsFizycznejPkd", + "BIR12OsPrawna", + "BIR12OsPrawnaPkd", + "BIR12OsPrawnaListaJednLokalnych", + "BIR12JednLokalnaOsPrawnej", + "BIR12JednLokalnaOsPrawnejPkd", + "BIR12OsPrawnaSpCywilnaWspolnicy", + "BIR12TypPodmiotu", ] TEST_API_KEY = "abcde12345abcde12345" From aef6f3d3ee7b3dec47a01888ca13115fffe34433 Mon Sep 17 00:00:00 2001 From: Jakub Date: Fri, 19 Sep 2025 14:19:25 +0200 Subject: [PATCH 5/5] Changed default BIR version to 1.2 --- README.md | 2 +- RegonAPI/regon_api.py | 2 +- pypi_long.md | 34 +++++++++++++++++----------------- 3 files changed, 19 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index 4a8c1e2..3827dc4 100644 --- a/README.md +++ b/README.md @@ -98,7 +98,7 @@ CD_PROJEKT_REGON9 = "492707333" # Authentication api = RegonAPI( - bir_version="bir1.1", is_production=False, timeout=10, operation_timeout=10 + bir_version="bir1.2", is_production=False, timeout=10, operation_timeout=10 ) try: api.authenticate(key=TEST_API_KEY) diff --git a/RegonAPI/regon_api.py b/RegonAPI/regon_api.py index c6acd7c..9cc3ecc 100644 --- a/RegonAPI/regon_api.py +++ b/RegonAPI/regon_api.py @@ -70,7 +70,7 @@ class RegonAPI(RegonAPIOperations): def __init__( self, - bir_version="bir1.1", + bir_version="bir1.2", is_production=False, service_namespace="{http://tempuri.org/}e3", timeout=10, diff --git a/pypi_long.md b/pypi_long.md index 8647d96..ae6b335 100644 --- a/pypi_long.md +++ b/pypi_long.md @@ -15,22 +15,22 @@ from RegonAPI.exceptions import ApiAuthenticationError # Available reports REPORTS = [ - "BIR11OsFizycznaDaneOgolne", - "BIR11OsFizycznaDzialalnoscCeidg", - "BIR11OsFizycznaDzialalnoscRolnicza", - "BIR11OsFizycznaDzialalnoscPozostala", - "BIR11OsFizycznaDzialalnoscSkreslonaDo20141108", - "BIR11OsFizycznaPkd", - "BIR11OsFizycznaListaJednLokalnych", - "BIR11JednLokalnaOsFizycznej", - "BIR11JednLokalnaOsFizycznejPkd", - "BIR11OsPrawna", - "BIR11OsPrawnaPkd", - "BIR11OsPrawnaListaJednLokalnych", - "BIR11JednLokalnaOsPrawnej", - "BIR11JednLokalnaOsPrawnejPkd", - "BIR11OsPrawnaSpCywilnaWspolnicy", - "BIR11TypPodmiotu", + "BIR12OsFizycznaDaneOgolne", + "BIR12OsFizycznaDzialalnoscCeidg", + "BIR12OsFizycznaDzialalnoscRolnicza", + "BIR12OsFizycznaDzialalnoscPozostala", + "BIR12OsFizycznaDzialalnoscSkreslonaDo20141108", + "BIR12OsFizycznaPkd", + "BIR12OsFizycznaListaJednLokalnych", + "BIR12JednLokalnaOsFizycznej", + "BIR12JednLokalnaOsFizycznejPkd", + "BIR12OsPrawna", + "BIR12OsPrawnaPkd", + "BIR12OsPrawnaListaJednLokalnych", + "BIR12JednLokalnaOsPrawnej", + "BIR12JednLokalnaOsPrawnejPkd", + "BIR12OsPrawnaSpCywilnaWspolnicy", + "BIR12TypPodmiotu", ] TEST_API_KEY = "abcde12345abcde12345" @@ -40,7 +40,7 @@ CD_PROJEKT_REGON9 = "492707333" # Authentication api = RegonAPI( - bir_version="bir1.1", is_production=False, timeout=10, operation_timeout=10 + bir_version="bir1.2", is_production=False, timeout=10, operation_timeout=10 ) try: api.authenticate(key=TEST_API_KEY)