Skip to content

B2Trust-Infrastructure/registry-api-examples

Repository files navigation

Registry API Examples

License: MIT

Production-quality code examples for querying official government business registry APIs worldwide. Each registry gets self-contained TypeScript examples with typed responses, error handling, and documentation of each API's quirks.

Target audience: Developers integrating with these APIs for the first time. These examples save you hours of reading inconsistent government docs and debugging unexpected response formats.

Quick Start

# Prerequisites: Node.js 18+
npm install

# Run any example directly
npx tsx poland-krs/search-by-name.ts "Microsoft"
npx tsx norway-brreg/search-by-name.ts "Equinor"
npx tsx czech-ares/search-by-name.ts "Skoda"
npx tsx eu-vies/validate-vat.ts "PL5213003700"

For registries that require API keys, copy .env.example to .env and add your credentials. Each registry's README explains how to get access.

Registry Overview

Country Registry API Type Auth Free? Name Search ID Format
Poland KRS REST/JSON None Yes Yes 10-digit zero-padded
Poland CEIDG REST/JSON Bearer token Yes Yes NIP (10 digits)
UK Companies House REST/JSON Basic auth Yes Yes 8 chars (may include letters)
France SIRENE REST/JSON None (was Bearer) Yes Yes SIREN (9) / SIRET (14)
Norway Bronnøysund REST/HAL+JSON None Yes Yes Org nr (9 digits)
Czech Republic ARES REST/JSON None Yes Yes ICO (8 digits)
USA SEC EDGAR REST/JSON None (User-Agent required) Yes Yes CIK (10 digits)
Australia ABN Lookup SOAP/XML GUID Yes Yes ABN (11 digits)
Germany OffeneRegister Bulk JSONL None Yes No (bulk download) HRA/HRB + number
EU VIES REST/JSON None Yes N/A VAT number

Note: There is no federal US business registry — SEC EDGAR covers public companies only. State-level registries vary widely.

Note: Germany's official Handelsregister.de has no public API and a ~60 req/h rate limit. OffeneRegister.de provides the same data as a bulk download.

How It Works

Each directory is self-contained:

  • README.md — API documentation, authentication setup, gotchas
  • search-by-name.ts, get-company.ts, etc. — Runnable examples
  • types.ts — TypeScript interfaces for raw API responses

All examples use native fetch (Node.js 18+) — no HTTP libraries needed. Response types match what each API actually returns (not normalized).

Related

Contributing

See CONTRIBUTING.md for how to add new registry examples.

License

MIT — see LICENSE.


Maintained by B2Trust — Business Identity Infrastructure.

About

Production-quality TypeScript examples for querying government business registry APIs — 11 registries, 10+ countries

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors