curl --request POST \
--url https://api.limitguard.ai/v1/reports/entity \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"check_id": "<string>",
"entity_name": "<string>",
"country": "<string>",
"kvk_number": "<string>",
"cbe_number": "<string>",
"vat_number": "<string>",
"domain": "<string>",
"iban": "<string>",
"wallet_address": "<string>",
"wallet_chain": "<string>"
}
'import requests
url = "https://api.limitguard.ai/v1/reports/entity"
payload = {
"check_id": "<string>",
"entity_name": "<string>",
"country": "<string>",
"kvk_number": "<string>",
"cbe_number": "<string>",
"vat_number": "<string>",
"domain": "<string>",
"iban": "<string>",
"wallet_address": "<string>",
"wallet_chain": "<string>"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
check_id: '<string>',
entity_name: '<string>',
country: '<string>',
kvk_number: '<string>',
cbe_number: '<string>',
vat_number: '<string>',
domain: '<string>',
iban: '<string>',
wallet_address: '<string>',
wallet_chain: '<string>'
})
};
fetch('https://api.limitguard.ai/v1/reports/entity', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.limitguard.ai/v1/reports/entity",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'check_id' => '<string>',
'entity_name' => '<string>',
'country' => '<string>',
'kvk_number' => '<string>',
'cbe_number' => '<string>',
'vat_number' => '<string>',
'domain' => '<string>',
'iban' => '<string>',
'wallet_address' => '<string>',
'wallet_chain' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.limitguard.ai/v1/reports/entity"
payload := strings.NewReader("{\n \"check_id\": \"<string>\",\n \"entity_name\": \"<string>\",\n \"country\": \"<string>\",\n \"kvk_number\": \"<string>\",\n \"cbe_number\": \"<string>\",\n \"vat_number\": \"<string>\",\n \"domain\": \"<string>\",\n \"iban\": \"<string>\",\n \"wallet_address\": \"<string>\",\n \"wallet_chain\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.limitguard.ai/v1/reports/entity")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"check_id\": \"<string>\",\n \"entity_name\": \"<string>\",\n \"country\": \"<string>\",\n \"kvk_number\": \"<string>\",\n \"cbe_number\": \"<string>\",\n \"vat_number\": \"<string>\",\n \"domain\": \"<string>\",\n \"iban\": \"<string>\",\n \"wallet_address\": \"<string>\",\n \"wallet_chain\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.limitguard.ai/v1/reports/entity")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"check_id\": \"<string>\",\n \"entity_name\": \"<string>\",\n \"country\": \"<string>\",\n \"kvk_number\": \"<string>\",\n \"cbe_number\": \"<string>\",\n \"vat_number\": \"<string>\",\n \"domain\": \"<string>\",\n \"iban\": \"<string>\",\n \"wallet_address\": \"<string>\",\n \"wallet_chain\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"report_id": "<string>",
"check_id": "<string>",
"created_at": "<string>",
"entity": {
"entity_name": "<string>",
"country": "<string>"
},
"sanctions": {
"status": "ok",
"result": "no_match",
"threshold": 123,
"reason": "<string>",
"screened_at": "<string>",
"match_score": 123,
"lists": [
{
"name": "<string>",
"as_of": "<string>",
"as_of_reason": "not_reported_by_source"
}
]
},
"pep": {
"status": "ok",
"reason": "<string>",
"screened_at": "<string>",
"exposure": true,
"matches": [
{
"caption": "<string>",
"score": 123,
"datasets": [
"<string>"
],
"topics": [
"<string>"
]
}
],
"truncated": false
},
"risk": {
"trust_score": 123,
"trust_level": "<string>",
"recommendation": "<string>",
"cluster": "<string>",
"confidence": 123,
"sources_checked": 123,
"rules_fired": [
{
"rule": "<string>",
"kind": "cap",
"effect": "<string>",
"value": 123
}
]
},
"correlations": {
"status": "ok",
"scope_note": "<string>",
"reason": "<string>",
"links": [
{
"kind": "<string>",
"value_display": "<string>",
"seen_with_report_id": "<string>",
"seen_at": "<string>",
"scope": "workspace_reports"
}
]
},
"evidence": {
"report_hash": "<string>",
"hash_algorithm": "sha256",
"canonicalization": "json.dumps(sort_keys=True, default=str) of the report without 'evidence'",
"audit_event_id": "<string>"
},
"schema_version": "1",
"identity": [
{
"source": "<string>",
"status": "ok",
"reason": "<string>",
"fetched_at": "<string>",
"verified": true,
"name": "<string>",
"registration_number": "<string>",
"legal_status": "<string>",
"founding_date": "<string>",
"address": "<string>",
"country": "<string>",
"nace_main": {},
"contacts": {},
"contacts_reason": "<string>",
"data_date": "<string>",
"profile": {
"status": "active",
"headline": "<string>",
"stopped_on": "<string>",
"industry": {
"code": "01241",
"is_main": true,
"description": "Teelt van appels en peren"
},
"other_activities": [],
"employees": {
"total": 123,
"full_time": 123,
"part_time": 123
},
"branches": {
"total": 123,
"commercial": 123
},
"kvk_non_mailing": true,
"statutory_name": "<string>",
"trade_names": [],
"extended_legal_form": "<string>",
"websites": [],
"lines": [],
"personal_data_withheld": false
},
"juridical_situation": {},
"activities": [
{}
],
"places_of_business": [
{}
]
}
],
"identification": {
"method": "given",
"status": "<string>",
"reason": "<string>",
"correlation": 123,
"discovered_identifiers": [
{
"kind": "kvk_number",
"value": "24330087",
"found_on_url": "<string>",
"status": "confirmed",
"registered_name": "<string>",
"confirmed_by": "kvk",
"name_match": 123,
"used": false,
"reason": "<string>"
}
]
},
"wallet": {
"status": "ok",
"address": "<string>",
"screening": "<string>",
"reason": "<string>",
"chain": "<string>",
"valid_format": true
},
"domain": {
"status": "ok",
"domain": "<string>",
"reason": "<string>",
"fetched_at": "<string>",
"domain_age_days": 123,
"has_mx": true,
"has_spf": true,
"has_dmarc": true,
"ssl_valid": true,
"ssl_issuer": "<string>",
"registered_at": "<string>"
},
"financials": {
"status": "ok",
"reason": "<string>",
"retrieved_at": "<string>",
"retrieved_note": "<string>",
"cache_age_days": 123,
"has_filings": true,
"financial_year": 123,
"adoption_date": "<string>",
"sbi_code": "<string>",
"currency": "EUR",
"balance_sheet": {
"assets": 123,
"assets_current": 123,
"assets_noncurrent": 123,
"equity": 123,
"liabilities": 123,
"liabilities_current": 123,
"liabilities_noncurrent": 123,
"provisions": 123,
"equity_and_liabilities": 123
},
"income_statement": {
"gross_margin": 123,
"operating_result": 123,
"result_before_tax": 123,
"result_after_tax": 123,
"employee_benefits_expenses": 123
},
"consolidated": true,
"consolidated_balance_sheet": {
"assets": 123,
"assets_current": 123,
"assets_noncurrent": 123,
"equity": 123,
"liabilities": 123,
"liabilities_current": 123,
"liabilities_noncurrent": 123,
"provisions": 123,
"equity_and_liabilities": 123
},
"consolidated_income_statement": {
"gross_margin": 123,
"operating_result": 123,
"result_before_tax": 123,
"result_after_tax": 123,
"employee_benefits_expenses": 123
},
"negative_equity": true,
"current_ratio": 123,
"filing_age_years": 123,
"benchmark": {
"fiscal_year": 123,
"same_sector": true,
"equity_ratio_pct": 123,
"direction": "lower",
"share": 50
},
"derived_note": "negative_equity, current_ratio and filing_age_years are derived from the filing as inputs for your own assessment, not a credit rating"
},
"group_structure": {
"status": "ok",
"reason": "<string>",
"lei": "<string>",
"legal_name": "<string>",
"entity_status": "<string>",
"registration_status": "<string>",
"next_renewal_date": "<string>",
"matched_by": "registration_number",
"direct_parent": {
"lei": "<string>",
"name": "<string>",
"country": "<string>"
},
"ultimate_parent": {
"lei": "<string>",
"name": "<string>",
"country": "<string>"
},
"retrieved_at": "<string>",
"cache_age_days": 123,
"parents_screened": false,
"source": "gleif"
},
"group_chain": {
"status": "ok",
"reason": "<string>",
"summary": "<string>",
"nearest": "<string>",
"top": "<string>",
"links": [
{
"role": "shareholder",
"source": "<string>",
"name": "<string>",
"country": "<string>",
"country_text": "<string>",
"enterprise_number": "<string>",
"share_pct": 123,
"scope": "largest",
"lei": "<string>",
"lei_registration_status": "<string>",
"lei_lapsed_since": 123,
"lookup": "<string>",
"lookup_source": "<string>",
"of": "<string>"
}
],
"filing_year": 123,
"filing_reference": "<string>",
"parents_screened": false
},
"be_accounts": {
"status": "ok",
"reason": "<string>",
"has_filings": true,
"model": "<string>",
"model_kind": "full",
"consolidated": true,
"enterprise_name": "<string>",
"period_start": "<string>",
"period_end": "<string>",
"approval_date": "<string>",
"years": [
123
],
"values": {},
"history": {},
"history_reason": "<string>",
"periods": [
{}
],
"source_url": "<string>",
"retrieved_at": "<string>",
"cache_age_days": 123,
"source": "web_services"
},
"website_phones": [
{
"number": "+3220000000",
"type": "landline",
"found_on_url": "<string>",
"retrieved_at": "<string>",
"source_label": "on example.com, contact page",
"source": "website",
"page_kind": "home",
"register_number_on_page": false,
"whatsapp": false
}
],
"website_phones_reason": "<string>",
"activity_evidence": {
"status": "ok",
"reason": "<string>",
"fetched_at": "<string>",
"website": "<string>",
"attribution": "registrant",
"registrant": {},
"site_names": [
{}
],
"products": [
"<string>"
],
"numbers": [
"<string>"
],
"shops": [
{}
],
"domain_registered_at": "<string>",
"matched_name": "<string>",
"matched_city": "<string>",
"matched_number": "<string>"
},
"kbo_functions": {
"status": "ok",
"reason": "<string>",
"functions": [
{
"role": "Bestuurder",
"name": "Jan Janssens",
"given": "<string>",
"since": "<string>"
}
],
"register_phone": "<string>",
"register_email": "<string>",
"register_website": "<string>",
"retrieved_at": "<string>",
"register_date": "<string>"
},
"entity_links": {
"status": "ok",
"reason": "<string>",
"links": [
{
"name": "<string>",
"kind": "trades_as",
"site": "<string>",
"evidence": "place_of_business_address",
"confidence": 0.5,
"address": "<string>",
"url": "<string>",
"place_number": "<string>",
"place_name": "<string>"
}
],
"group_name": "<string>",
"group_site": "<string>",
"place_checks": [
{
"address_result": "match",
"number": "<string>",
"place_name": "<string>",
"website_name": "<string>",
"name_result": "match"
}
],
"fetched_at": "<string>"
},
"findings": [
{
"action": "<string>",
"why": "<string>",
"expected_result": "<string>"
}
],
"findings_note": "<string>",
"sources": [
{
"source": "<string>",
"status": "ok",
"reason": "<string>",
"fetched_at": "<string>",
"latency_ms": 123
}
],
"attributions": [
"<string>"
]
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Create Entity Report
Build a per-entity report from one real check (or a stored check_id).
curl --request POST \
--url https://api.limitguard.ai/v1/reports/entity \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"check_id": "<string>",
"entity_name": "<string>",
"country": "<string>",
"kvk_number": "<string>",
"cbe_number": "<string>",
"vat_number": "<string>",
"domain": "<string>",
"iban": "<string>",
"wallet_address": "<string>",
"wallet_chain": "<string>"
}
'import requests
url = "https://api.limitguard.ai/v1/reports/entity"
payload = {
"check_id": "<string>",
"entity_name": "<string>",
"country": "<string>",
"kvk_number": "<string>",
"cbe_number": "<string>",
"vat_number": "<string>",
"domain": "<string>",
"iban": "<string>",
"wallet_address": "<string>",
"wallet_chain": "<string>"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
check_id: '<string>',
entity_name: '<string>',
country: '<string>',
kvk_number: '<string>',
cbe_number: '<string>',
vat_number: '<string>',
domain: '<string>',
iban: '<string>',
wallet_address: '<string>',
wallet_chain: '<string>'
})
};
fetch('https://api.limitguard.ai/v1/reports/entity', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.limitguard.ai/v1/reports/entity",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'check_id' => '<string>',
'entity_name' => '<string>',
'country' => '<string>',
'kvk_number' => '<string>',
'cbe_number' => '<string>',
'vat_number' => '<string>',
'domain' => '<string>',
'iban' => '<string>',
'wallet_address' => '<string>',
'wallet_chain' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.limitguard.ai/v1/reports/entity"
payload := strings.NewReader("{\n \"check_id\": \"<string>\",\n \"entity_name\": \"<string>\",\n \"country\": \"<string>\",\n \"kvk_number\": \"<string>\",\n \"cbe_number\": \"<string>\",\n \"vat_number\": \"<string>\",\n \"domain\": \"<string>\",\n \"iban\": \"<string>\",\n \"wallet_address\": \"<string>\",\n \"wallet_chain\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.limitguard.ai/v1/reports/entity")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"check_id\": \"<string>\",\n \"entity_name\": \"<string>\",\n \"country\": \"<string>\",\n \"kvk_number\": \"<string>\",\n \"cbe_number\": \"<string>\",\n \"vat_number\": \"<string>\",\n \"domain\": \"<string>\",\n \"iban\": \"<string>\",\n \"wallet_address\": \"<string>\",\n \"wallet_chain\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.limitguard.ai/v1/reports/entity")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"check_id\": \"<string>\",\n \"entity_name\": \"<string>\",\n \"country\": \"<string>\",\n \"kvk_number\": \"<string>\",\n \"cbe_number\": \"<string>\",\n \"vat_number\": \"<string>\",\n \"domain\": \"<string>\",\n \"iban\": \"<string>\",\n \"wallet_address\": \"<string>\",\n \"wallet_chain\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"report_id": "<string>",
"check_id": "<string>",
"created_at": "<string>",
"entity": {
"entity_name": "<string>",
"country": "<string>"
},
"sanctions": {
"status": "ok",
"result": "no_match",
"threshold": 123,
"reason": "<string>",
"screened_at": "<string>",
"match_score": 123,
"lists": [
{
"name": "<string>",
"as_of": "<string>",
"as_of_reason": "not_reported_by_source"
}
]
},
"pep": {
"status": "ok",
"reason": "<string>",
"screened_at": "<string>",
"exposure": true,
"matches": [
{
"caption": "<string>",
"score": 123,
"datasets": [
"<string>"
],
"topics": [
"<string>"
]
}
],
"truncated": false
},
"risk": {
"trust_score": 123,
"trust_level": "<string>",
"recommendation": "<string>",
"cluster": "<string>",
"confidence": 123,
"sources_checked": 123,
"rules_fired": [
{
"rule": "<string>",
"kind": "cap",
"effect": "<string>",
"value": 123
}
]
},
"correlations": {
"status": "ok",
"scope_note": "<string>",
"reason": "<string>",
"links": [
{
"kind": "<string>",
"value_display": "<string>",
"seen_with_report_id": "<string>",
"seen_at": "<string>",
"scope": "workspace_reports"
}
]
},
"evidence": {
"report_hash": "<string>",
"hash_algorithm": "sha256",
"canonicalization": "json.dumps(sort_keys=True, default=str) of the report without 'evidence'",
"audit_event_id": "<string>"
},
"schema_version": "1",
"identity": [
{
"source": "<string>",
"status": "ok",
"reason": "<string>",
"fetched_at": "<string>",
"verified": true,
"name": "<string>",
"registration_number": "<string>",
"legal_status": "<string>",
"founding_date": "<string>",
"address": "<string>",
"country": "<string>",
"nace_main": {},
"contacts": {},
"contacts_reason": "<string>",
"data_date": "<string>",
"profile": {
"status": "active",
"headline": "<string>",
"stopped_on": "<string>",
"industry": {
"code": "01241",
"is_main": true,
"description": "Teelt van appels en peren"
},
"other_activities": [],
"employees": {
"total": 123,
"full_time": 123,
"part_time": 123
},
"branches": {
"total": 123,
"commercial": 123
},
"kvk_non_mailing": true,
"statutory_name": "<string>",
"trade_names": [],
"extended_legal_form": "<string>",
"websites": [],
"lines": [],
"personal_data_withheld": false
},
"juridical_situation": {},
"activities": [
{}
],
"places_of_business": [
{}
]
}
],
"identification": {
"method": "given",
"status": "<string>",
"reason": "<string>",
"correlation": 123,
"discovered_identifiers": [
{
"kind": "kvk_number",
"value": "24330087",
"found_on_url": "<string>",
"status": "confirmed",
"registered_name": "<string>",
"confirmed_by": "kvk",
"name_match": 123,
"used": false,
"reason": "<string>"
}
]
},
"wallet": {
"status": "ok",
"address": "<string>",
"screening": "<string>",
"reason": "<string>",
"chain": "<string>",
"valid_format": true
},
"domain": {
"status": "ok",
"domain": "<string>",
"reason": "<string>",
"fetched_at": "<string>",
"domain_age_days": 123,
"has_mx": true,
"has_spf": true,
"has_dmarc": true,
"ssl_valid": true,
"ssl_issuer": "<string>",
"registered_at": "<string>"
},
"financials": {
"status": "ok",
"reason": "<string>",
"retrieved_at": "<string>",
"retrieved_note": "<string>",
"cache_age_days": 123,
"has_filings": true,
"financial_year": 123,
"adoption_date": "<string>",
"sbi_code": "<string>",
"currency": "EUR",
"balance_sheet": {
"assets": 123,
"assets_current": 123,
"assets_noncurrent": 123,
"equity": 123,
"liabilities": 123,
"liabilities_current": 123,
"liabilities_noncurrent": 123,
"provisions": 123,
"equity_and_liabilities": 123
},
"income_statement": {
"gross_margin": 123,
"operating_result": 123,
"result_before_tax": 123,
"result_after_tax": 123,
"employee_benefits_expenses": 123
},
"consolidated": true,
"consolidated_balance_sheet": {
"assets": 123,
"assets_current": 123,
"assets_noncurrent": 123,
"equity": 123,
"liabilities": 123,
"liabilities_current": 123,
"liabilities_noncurrent": 123,
"provisions": 123,
"equity_and_liabilities": 123
},
"consolidated_income_statement": {
"gross_margin": 123,
"operating_result": 123,
"result_before_tax": 123,
"result_after_tax": 123,
"employee_benefits_expenses": 123
},
"negative_equity": true,
"current_ratio": 123,
"filing_age_years": 123,
"benchmark": {
"fiscal_year": 123,
"same_sector": true,
"equity_ratio_pct": 123,
"direction": "lower",
"share": 50
},
"derived_note": "negative_equity, current_ratio and filing_age_years are derived from the filing as inputs for your own assessment, not a credit rating"
},
"group_structure": {
"status": "ok",
"reason": "<string>",
"lei": "<string>",
"legal_name": "<string>",
"entity_status": "<string>",
"registration_status": "<string>",
"next_renewal_date": "<string>",
"matched_by": "registration_number",
"direct_parent": {
"lei": "<string>",
"name": "<string>",
"country": "<string>"
},
"ultimate_parent": {
"lei": "<string>",
"name": "<string>",
"country": "<string>"
},
"retrieved_at": "<string>",
"cache_age_days": 123,
"parents_screened": false,
"source": "gleif"
},
"group_chain": {
"status": "ok",
"reason": "<string>",
"summary": "<string>",
"nearest": "<string>",
"top": "<string>",
"links": [
{
"role": "shareholder",
"source": "<string>",
"name": "<string>",
"country": "<string>",
"country_text": "<string>",
"enterprise_number": "<string>",
"share_pct": 123,
"scope": "largest",
"lei": "<string>",
"lei_registration_status": "<string>",
"lei_lapsed_since": 123,
"lookup": "<string>",
"lookup_source": "<string>",
"of": "<string>"
}
],
"filing_year": 123,
"filing_reference": "<string>",
"parents_screened": false
},
"be_accounts": {
"status": "ok",
"reason": "<string>",
"has_filings": true,
"model": "<string>",
"model_kind": "full",
"consolidated": true,
"enterprise_name": "<string>",
"period_start": "<string>",
"period_end": "<string>",
"approval_date": "<string>",
"years": [
123
],
"values": {},
"history": {},
"history_reason": "<string>",
"periods": [
{}
],
"source_url": "<string>",
"retrieved_at": "<string>",
"cache_age_days": 123,
"source": "web_services"
},
"website_phones": [
{
"number": "+3220000000",
"type": "landline",
"found_on_url": "<string>",
"retrieved_at": "<string>",
"source_label": "on example.com, contact page",
"source": "website",
"page_kind": "home",
"register_number_on_page": false,
"whatsapp": false
}
],
"website_phones_reason": "<string>",
"activity_evidence": {
"status": "ok",
"reason": "<string>",
"fetched_at": "<string>",
"website": "<string>",
"attribution": "registrant",
"registrant": {},
"site_names": [
{}
],
"products": [
"<string>"
],
"numbers": [
"<string>"
],
"shops": [
{}
],
"domain_registered_at": "<string>",
"matched_name": "<string>",
"matched_city": "<string>",
"matched_number": "<string>"
},
"kbo_functions": {
"status": "ok",
"reason": "<string>",
"functions": [
{
"role": "Bestuurder",
"name": "Jan Janssens",
"given": "<string>",
"since": "<string>"
}
],
"register_phone": "<string>",
"register_email": "<string>",
"register_website": "<string>",
"retrieved_at": "<string>",
"register_date": "<string>"
},
"entity_links": {
"status": "ok",
"reason": "<string>",
"links": [
{
"name": "<string>",
"kind": "trades_as",
"site": "<string>",
"evidence": "place_of_business_address",
"confidence": 0.5,
"address": "<string>",
"url": "<string>",
"place_number": "<string>",
"place_name": "<string>"
}
],
"group_name": "<string>",
"group_site": "<string>",
"place_checks": [
{
"address_result": "match",
"number": "<string>",
"place_name": "<string>",
"website_name": "<string>",
"name_result": "match"
}
],
"fetched_at": "<string>"
},
"findings": [
{
"action": "<string>",
"why": "<string>",
"expected_result": "<string>"
}
],
"findings_note": "<string>",
"sources": [
{
"source": "<string>",
"status": "ok",
"reason": "<string>",
"fetched_at": "<string>",
"latency_ms": 123
}
],
"attributions": [
"<string>"
]
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
Body
Body of POST /v1/reports/entity.
Send either check_id (rebuild from a check this store already holds) or
identifiers (entity_name + country plus any of the optional ones),
never both. Identifier fields keep the names of POST /v1/entity/check.
Id of a check stored by an earlier /v1/reports/entity call
1 - 50022025334Crypto wallet address (named wallet_address, as on /v1/entity/check)
100Response
Successful Response
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
How the company was identified: from the numbers found on its own website, each checked with its register. Absent when the customer gave a number or discovery was skipped; present for every other outcome, also when nothing was found or the read was refused, blocked, timed out or failed.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Financials (NL): the latest annual accounts filed with KVK.
has_filings is None whenever the source did not answer: an
unavailable source never reads as "none filed".
Show child attributes
Show child attributes
Group structure from GLEIF Level 2 data.
Parents are not screened for sanctions (Walker, 2026-09-25): that is a
separately priced add-on, so parents_screened is always False. A
parent is None when GLEIF holds no parent LEI record; on any status
other than ok every entity field is None, never "no parent".
Show child attributes
Show child attributes
A Belgian company's group: the parent named in its NBB filing, chained up through GLEIF.
Read from the latest filing's consolidated-accounts declaration and shareholder structure, then each named parent's GLEIF direct and ultimate parent. The chain stops at the first missing link. Shown, never scored; parents are not screened for sanctions (Walker, 2026-09-25).
Show child attributes
Show child attributes
Belgian annual accounts filed with the National Bank of Belgium.
Shown on the report, never scored. values maps the official account code
("70" turnover, "10/15" equity, ...) to the filed amounts; history
holds the two older years a small company's second filing adds. On any
status other than ok every figure field is empty, never "nothing filed".
source is "consult" when read from the public Consult app; None
means the web services, or a report stored before.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
What the company's website and shop listings show about its activities.
attribution is the Amendment 2 rule's answer (business_activities.attribute):
a name match and one related source, the domain's RDAP registrant, a company
or VAT number on the site, or the site's own structured data (site_data);
else name_city (a site name matching a trade name, same city); None: the
site is not the company's as far as the sources show, and no activity is shown.
registrant holds the organisation only (org, city, country, registrar_host),
never a person's fields.
Show child attributes
Show child attributes
The people and contact lines read from the company's public KBO search page
at check time. status ok: functions is the whole "Functies" block ([] = the
register lists none). Anything else: no name, never a stale or guessed one.
Show child attributes
Show child attributes
What the company trades as and the group it belongs to, from the websites
the register lists, judged by the link check (lg-entity-link). links are the
shown links only: a name alone never links.
Show child attributes
Show child attributes
12Show child attributes
Show child attributes
Show child attributes
Show child attributes