API Documentation
Programmatic access to global business registry data.
Quick start
Make your first request in seconds. All you need is an API key.
curl -H "X-API-Key: b2t_your_key" \
"https://b2trust.com/api/v1/search?q=CD+Projekt"Authentication
Authenticate every request by including your API key in the X-API-Key header.
X-API-Key: b2t_your_keyAPI keys are prefixed with b2t_. Keep your key secret and never expose it in client-side code.
Endpoints
GET
/api/v1/searchSearch for companies across all registries.
| Parameter | Type | Description |
|---|---|---|
| q | string | Search query (company name, tax ID, VAT number) |
| country | string | ISO 3166-1 alpha-2 country code (optional) |
| limit | number | Max results to return, default 10 (optional) |
GET
/api/v1/company/{country_code}-{national_id}Retrieve a full company profile by its unique identifier.
curl -H "X-API-Key: b2t_your_key" \
"https://b2trust.com/api/v1/company/PL-7342867148"Response schema
All responses follow a consistent envelope format.
{
"status": "ok",
"data": {
"country_code": "PL",
"national_id": "7342867148",
"company_name": "CD Projekt S.A.",
"legal_form": "Spółka Akcyjna",
"status": "active",
"registered_address": {
"street": "ul. Jagiellońska 74",
"city": "Warszawa",
"postal_code": "03-301",
"country": "PL"
},
"registration_date": "2002-02-01",
"activity_codes": [...],
"directors": [...],
"registry_count": 3,
"verified_at": "2026-03-15T10:30:00Z"
},
"meta": {
"cached": true,
"cache_age_hours": 12
}
}Rate limits
| Limit | Value |
|---|---|
| Requests per day | 20 |
| Requests per minute | 3 |
Rate limits are applied per API key. Exceeding the limit returns a 429 status code.
Error codes
| Code | Status | Description |
|---|---|---|
| 400 | Bad Request | Missing or invalid query parameters |
| 401 | Unauthorized | Missing or invalid API key |
| 404 | Not Found | Company or resource not found |
| 429 | Too Many Requests | Rate limit exceeded |
| 500 | Internal Server Error | Unexpected server error |
Code examples
Python
import requests
response = requests.get(
"https://b2trust.com/api/v1/search",
params={"q": "CD Projekt"},
headers={"X-API-Key": "b2t_your_key"}
)
data = response.json()
for company in data["data"]:
print(company["company_name"], company["country_code"])JavaScript
const response = await fetch(
"https://b2trust.com/api/v1/search?q=CD+Projekt",
{
headers: { "X-API-Key": "b2t_your_key" }
}
);
const { data } = await response.json();
data.forEach(company => {
console.log(company.company_name, company.country_code);
});curl
curl -H "X-API-Key: b2t_your_key" \
"https://b2trust.com/api/v1/search?q=CD+Projekt&country=PL&limit=5"