The Insolvenz-Radar API provides access to insolvency data with comprehensive search capabilities, authentication, and rate limiting. The API follows RESTful principles.
https://api.insolvenz-radar.de/v1
All API requests require authentication using an API key. The API key must be included in the request headers.
X-API-Key: your-api-key-here
X-API-Key headerThe API implements rate limiting on a per account basis with hourly windows. Rate limits depend on your plan.
| Header | Description | Example |
|---|---|---|
X-RateLimit-Limit |
Maximum requests allowed per hour | 1000 |
X-RateLimit-Remaining |
Remaining requests in current hour | 847 |
429 Too Many Requests/health
Check account health status.
Response
{
"ok": true
}
/entries/search
Search and filter insolvency entries with pagination support, field selection, and wildcard search.
All values need to be URL encoded.Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
page |
integer | No | Page number (default: 1) |
per_page |
integer | No | Items per page (1-100, default: 25) |
sort |
string | No | Sort field: veroeffentlicht (default: veroeffentlicht) |
order |
string | No | Sort order: asc or desc (default: desc) |
fields |
string | No | Comma-separated list of fields to return (see Field Selection section) |
veroeffentlicht_from |
date | No | Filter by publication date from (YYYY-MM-DD) |
veroeffentlicht_to |
date | No | Filter by publication date to (YYYY-MM-DD) |
type |
string | No | Exact match on entry type |
name |
string | No | Exact match on company name (supports wildcards with *) |
firstname |
string | No | Exact match on first name (supports wildcards with *) |
lastname |
string | No | Exact match on last name (supports wildcards with *) |
birthday |
string | No | Exact match on birth date (YYYY-MM-DD format, supports wildcards with *) |
sitz |
string | No | Exact match on debtor location (supports wildcards with *) |
gericht |
string | No | Exact match on court name |
reg_number |
string | No | Exact match on registration number (e.g. HRB 16674) |
reg_type |
string | No | Exact match on registration type (e.g. HRB) |
register |
string | No | Exact match on register (e.g. 16674) |
debtor_address_street |
string | No | Exact match on debtor street address (supports wildcards with *) |
debtor_address_housenumber |
string | No | Exact match on debtor house number (supports wildcards with *) |
debtor_address_postcode |
string | No | Exact match on debtor postal code (supports wildcards with *) |
debtor_address_city |
string | No | Exact match on debtor city (supports wildcards with *) |
company_purpose |
string | No | Exact match on company purpose (supports wildcards with *, e.g. "An- und Verkauf von Immobilien") |
Response
{
"data": [
{
"veroeffentlicht": "2024-01-15T10:30:00+00:00",
"az": "AZ 123/24",
"gericht": "Amtsgericht München",
"name": "Example GmbH",
"sitz": "München",
"register": "München, HRB 266691",
"type": "eroeffnung",
"firstname": "Max",
"lastname": "Mustermann",
"birthday": "1980-05-15",
"reg_number": "HRB 266691",
"reg_type": "HRB",
"reg_number_number": 266691,
"administrator": "Dr. Max Mustermann",
"debtor_address_street": "Hauptstraße",
"debtor_address_housenumber": "123",
"debtor_address_postcode": "80331",
"debtor_address_city": "München",
"company_purpose": "Handel mit Waren aller Art",
"administrator": "Dr. Max Mustermann, Musterstraße 123, 80331 München, +49 123 4567890, max.mustermann@example.com, https://www.example.com"
}
],
"meta": {
"page": 1,
"per_page": 25,
"total": 1500
}
}
Most string parameters support wildcard search using the * character:
name=*GmbH* - Find companies with "GmbH" in the namefirstname=*i*m* - Find first names containing "i" and "m"lastname=Meyer - Exact match (no wildcards)debtor_address_street=*Hauptstraße* - Find debtors on streets containing "Hauptstraße"debtor_address_city=*München* - Find debtors in cities containing "München"debtor_address_postcode=144* - Find debtors with postal codes starting with "144"company_purpose=*Software* - Find companies with "Software" in their purposeThe type parameter accepts specific values for different insolvency procedures and decisions:
| Type Value |
|---|
sicherungsmassnahme |
abweisung_mangels_masse |
eroeffnung |
entscheidung_im_verfahren |
sonstiges |
entscheidung_nach_aufhebung_des_verfahrens |
verteilungsverzeichnisse |
entscheidung_im_restschuldbefreiungsverfahren |
ueberwachte_insolvenzplaene |
Note: Type values are case-sensitive.
Date parameters accept YYYY-MM-DD format and are automatically converted to full datetime ranges:
veroeffentlicht_from - From 00:00:00 of the specified dateveroeffentlicht_to - To 23:59:59 of the specified datePagination is handled via page and per_page parameters:
Use the fields parameter to specify which fields to return in the response. This can significantly reduce response size and improve performance.
| Field | Type | Description |
|---|---|---|
veroeffentlicht | string | Publication date (ISO 8601) |
az | string | Case number |
gericht | string | Court name |
name | string | Company name |
sitz | string | Company location |
register | string | Register information |
type | string | Entry type |
firstname | string | First name |
lastname | string | Last name |
birthday | string | Birth date (YYYY-MM-DD) |
reg_number | string | Registration number (e.g. HRB 123456) |
administrator | string | Administrator name (Verwalter) |
debtor_address_street | string | Debtor street address |
debtor_address_housenumber | string | Debtor house number |
debtor_address_postcode | string | Debtor postal code |
debtor_address_city | string | Debtor city |
company_purpose | string | Company purpose (Unternehmensgegenstand) |
?fields=name,firstname,lastname,birthday
Returns only company name, first name, last name, and birthday fields.
?fields=veroeffentlicht,gericht,type
Returns only publication date, court, and type fields.
All successful responses return JSON with UTF-8 encoding and include appropriate headers.
| Field | Type | Description |
|---|---|---|
veroeffentlicht | string (ISO 8601) | Publication date |
az | string | Case number |
gericht | string | Court name |
name | string | Company name |
sitz | string | Company location |
register | string | Register information |
type | string | Entry type |
firstname | string | First name |
lastname | string | Last name |
birthday | string (YYYY-MM-DD) | Birth date |
reg_number | string | Registration number |
reg_type | string | Registration type |
reg_number_number | integer | Numeric registration number |
administrator | string | Administrator name (Verwalter) |
debtor_address_street | string | Debtor street address |
debtor_address_housenumber | string | Debtor house number |
debtor_address_postcode | string | Debtor postal code |
debtor_address_city | string | Debtor city |
company_purpose | string | Company purpose (Unternehmensgegenstand) |
| Code | Status | Description |
|---|---|---|
| 200 | OK | Request successful |
| 401 | Unauthorized | Missing or invalid API key |
| 404 | Not Found | Entry not found |
| 429 | Too Many Requests | Rate limit exceeded |
| 500 | Internal Server Error | Server error |
{
"error": "Error message description"
}
"Missing X-API-Key" - API key header not provided"Invalid API key" - API key not found in database"Rate limit exceeded" - Hourly rate limit reachedcurl -H "X-API-Key: your-api-key" "https://api.insolvenz-radar.de/v1/entries/search?name=GALERIA%20Karstadt%20Kaufhof%20GmbH&page=1&per_page=10"
Exact search for name
curl -H "X-API-Key: your-api-key" "https://api.insolvenz-radar.de/v1/entries/search?lastname=*meier*&firstname=*a*"
curl -H "X-API-Key: your-api-key" "https://api.insolvenz-radar.de/v1/entries/search?veroeffentlicht_from=2024-01-01&veroeffentlicht_to=2024-01-31"
curl -H "X-API-Key: your-api-key" "https://api.insolvenz-radar.de/v1/entries/search?fields=name,firstname,lastname,birthday"
curl -H "X-API-Key: your-api-key" "https://api.insolvenz-radar.de/v1/entries/search?gericht=*M%C3%BCnchen*&type=eroeffnung"
curl -H "X-API-Key: your-api-key" "https://api.insolvenz-radar.de/v1/entries/search?lastname=*meier*&veroeffentlicht_from=2023-01-01&type=entscheidung_im_verfahren&fields=name,firstname,lastname,birthday,gericht&page=1&per_page=50"
curl -H "X-API-Key: your-api-key" "https://api.insolvenz-radar.de/v1/entries/search?debtor_address_city=*Berlin*&debtor_address_street=*Hauptstra%C3%9Fe*&fields=name,firstname,lastname,debtor_address_street,debtor_address_city"
curl -H "X-API-Key: your-api-key" "https://api.insolvenz-radar.de/v1/health"
// Your API key
$apiKey = 'your-api-key';
// Base URL
$baseUrl = 'https://api.insolvenz-radar.de/v1/entries/search';
// Helper function to perform the API request with curl
function callApi($url, $apiKey) {
$ch = curl_init();
curl_setopt_array($ch, [
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'X-API-Key: ' . $apiKey,
'Content-Type: application/json'
],
CURLOPT_TIMEOUT => 30,
]);
$response = curl_exec($ch);
$error = curl_error($ch);
curl_close($ch);
if ($error) {
echo "cURL error: $error\n";
return null;
}
$data = json_decode($response, true);
return $data;
}
// --- Example: Search with wildcard and field selection ---
$query = http_build_query([
'name' => 'Galeria*',
'fields' => 'veroeffentlicht,name,register, administrator'
]);
$data = callApi("$baseUrl?$query", $apiKey);
var_dump($data);
import requests
# Search with field selection
response = requests.get(
'https://api.insolvenz-radar.de/v1/entries/search',
params={
'name': 'GALERIA%20Karstadt%20Kaufhof%20GmbH',
'fields': 'name,firstname,lastname,birthday',
'page': 1,
'per_page': 10
},
headers={'X-API-Key': 'your-api-key'}
)
if response.status_code == 200:
data = response.json()
print(f"Found {data['meta']['total']} entries")
for entry in data['data']:
print(f"Name: {entry['name']}, Person: {entry['firstname']} {entry['lastname']}")
else:
print(f"Error: {response.status_code} - {response.json()}")