Deep check: extended PEP/RCA exposure screening, the Dutch insolvency
register on every tier, adverse media on the extended tier, an
Italian credit report on the credit tier.
pep_extended is the source the base check does not return. /v1/entity/check
queries the same OpenSanctions collection but filters to sanctions/enforcement
datasets and reduces the answer to a boolean (app/services/sanctions.py); the
role.pep/role.rca detail is fetched and discarded. This endpoint keeps it.
insolvency_records is the Centraal Insolventieregister (NL only; for any other
country the field says applicable: false). It is queried by kvk_number when
the body carries one (exact), else by entity_name (trade-name search).
kvk_register_flags is KVK’s own register status for a Dutch BV or NV:
actief and insolventieCode from KVK’s Open Dataset Basisbedrijfsgegevens. It
is null while KVK_REGISTER_FLAGS_ENABLED is off, for any country other than NL and
without kvk_number. not_covered means the dataset has no entry (not a BV or
NV). not_available means KVK did not answer. not_applicable means
kvk_number is not 8 digits, so no call is made. None of these is a clean
answer, and none turns the call into a 503. findings lists the actions these flags
give, with exactly one finding when KVK and the insolvency register disagree.
credit_report is an Openapi.com credit score, Italy only, available when
OPENAPI_CREDIT_API_KEY is configured — see /health. For any other country, or
a supported one with no credit_report_identifier (VAT number, tax code or
company ID) in the body, the field says applicable: false rather than being
omitted or erroring, the same pattern insolvency_records uses for non-NL, and
the credit tier’s premium is never billed for it (app/middleware/x402.py
probes the country before pricing the call).
Three tiers, resolved from X-Response-Quality by the x402 middleware: fresh
(default; the deep tier, 0.88)returnspepextendedandinsolvencyrecords;‘enhanced‘(the‘extended‘tier,1.71) adds adverse_media from dilisense;
credit ($2.45, Italy only, available when enabled) adds credit_report
instead. There is no cache-only branch, so cached is quoted, charged and
served as fresh. If a source of the requested tier cannot be reached the
answer is a 503 (pep_source_unavailable, insolvency_source_unavailable,
adverse_media_source_unavailable or credit_report_source_unavailable),
never a fabricated clean screen, and the x402 gate settles only on a 2xx so the
call is not charged.
Takes entity fields rather than an entity_id from a prior check: the audit
trail is keyed by sha256(entity_name) and is one-way, so an id could not be
resolved back to the name the screens have to query. kvk_number is optional
and consulted by the insolvency source: the Centraal
Insolventieregister keys searchUndertaking on the KvK number, which is an
exact lookup where a trade-name search is a fuzzy one. While
KVK_REGISTER_FLAGS_ENABLED is on, it also drives the KVK register flags lookup. credit_report_identifier
is only consulted by the credit tier's source: Openapi.com's Italian
credit-score lookup keys on a VAT number, tax code or company ID rather than a
name, and reports back in identifier_type which one it matched.
VAT number, tax code or company ID for the credit tier's provider (Italy only today); without it the tier still runs but credit_report comes back applicable: false, same as an unsupported country
Maximum string length: 32
Response
Successful Response
Response from /v1/entity/deep-check.
sources_returned is built from payment.DEEP_CHECK_TIER_ADDS[tier] -- the same
table enhanced_check_hint advertises -- so what was promised and what was delivered
are one value. A name may only join that table together with the field that fills
it on that tier.
Result of the pep_extended source. screened is never False on a 200.
There is no code path that returns this model without having queried
OpenSanctions: app/services/pep.py raises rather than fabricating a clean screen,
and the router turns that into a 503 so the payment is never settled.
KVK's own register flags beside the insolvency register. None while KVK_REGISTER_FLAGS_ENABLED is off, for a country other than NL, or without kvk_number.
Populated only on the credit tier. None means the tier did not include it -- never that a screen ran and found no credit risk. applicable: false inside it (never omission) means the tier was requested but the country has no provider or no identifier was sent.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Limitguard","description":"Limitguard is a lead validation service for lead generation agencies, sales agents and their clients: it checks the company behind each lead against the official business registers (KVK in the Netherlands, KBO in Belgium), EU VAT (VIES) and the OFAC, EU and UN sanctions lists, and returns proceed, review or block with the source on every line. Developers and AI agents can use the same checks over its HTTP API, MCP server and A2A service, hosted in the EU.","colors":{"primary":"#0A6B4A","light":"#10B981","dark":"#0A6B4A"},"logo":{"light":"https://mintcdn.com/limitguard/uaqWIf-9wGFL37l0/logo/light.svg?fit=max\u0026auto=format\u0026n=uaqWIf-9wGFL37l0\u0026q=85\u0026s=001e2a6b81bfb747720577c78583c066","dark":"https://mintcdn.com/limitguard/uaqWIf-9wGFL37l0/logo/dark.svg?fit=max\u0026auto=format\u0026n=uaqWIf-9wGFL37l0\u0026q=85\u0026s=05ebefc386a71f5e89a9d937d8fd8089"},"favicon":{"light":"https://mintcdn.com/limitguard/uaqWIf-9wGFL37l0/favicon.svg?fit=max\u0026auto=format\u0026n=uaqWIf-9wGFL37l0\u0026q=85\u0026s=24ca319e03edbdc7dd773c74b1b24bfa","dark":"https://mintcdn.com/limitguard/uaqWIf-9wGFL37l0/favicon-dark.svg?fit=max\u0026auto=format\u0026n=uaqWIf-9wGFL37l0\u0026q=85\u0026s=21fd795bffa8691e3f5391e4fe07387b"},"api":{"playground":{"proxy":false}},"background":{"color":{"light":"#F3EEE2","dark":"#14201A"}},"navbar":{"links":[{"href":"https://limitguard.ai/?utm_source=docs\u0026utm_medium=docs\u0026utm_campaign=home\u0026utm_content=navbar","label":"limitguard.ai"},{"href":"https://status.limitguard.ai","label":"API Status"}],"primary":{"type":"button","label":"Get API Key","href":"https://dashboard.limitguard.ai/sign-up?utm_source=docs\u0026utm_medium=docs\u0026utm_campaign=signup\u0026utm_content=navbar"}},"footer":{"socials":{"x":"https://x.com/Limitguard","linkedin":"https://www.linkedin.com/company/limitguard","github":"https://github.com/jwconsultancyteam/limitguard-mcp","website":"https://limitguard.ai/?utm_source=docs\u0026utm_medium=docs\u0026utm_campaign=home\u0026utm_content=footer"}},"search":{"prompt":"Search Limitguard docs..."},"seo":{"metatags":{"og:site_name":"Limitguard","og:description":"Limitguard API docs: check the company behind each lead against the KVK and KBO registers, EU VAT and sanctions lists, and get proceed, review or block with the source, over the HTTP API, MCP or A2A."},"indexing":"navigable"},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"limitguard","hasAudioNarration":false,"actualSubdomain":"limitguard","customDomains":["docs.limitguard.ai"],"gitSource":{"type":"github","owner":"jwconsultancyteam","repo":"limitguard-docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"entitlements":{},"buildId":"6ad89f1216faa66f78bb758a","clientVersion":"0.0.4087","searchFilterCounts":[{"language":"default","tag":"API Reference","count":128},{"language":"default","tag":"Endpoints","count":72},{"language":"default","tag":"Changelog","count":32},{"language":"default","tag":"Documentation","count":18},{"language":"default","tag":"Guides","count":9},{"language":"default","tag":"mcp","count":5},{"language":"default","tag":"Get Started","count":4},{"language":"default","tag":"Core Concepts","count":3},{"language":"default","tag":"sanctions","count":3},{"language":"default","tag":"x402","count":3}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/entity-deep-check","slug":"/api-reference/entity-deep-check","pageMetadata":{"title":"Entity Deep Check","description":"Deep check: extended PEP/RCA exposure screening, the Dutch insolvency\nregister on every tier, adverse media on the extended tier, an\nItalian credit report on the credit tier.\n\n`pep_extended` is the source the base check does not return. /v1/entity/check\nqueries the same OpenSanctions collection but filters to sanctions/enforcement\ndatasets and reduces the answer to a boolean (app/services/sanctions.py); the\nrole.pep/role.rca detail is fetched and discarded. This endpoint keeps it.\n\n`insolvency_records` is the Centraal Insolventieregister (NL only; for any other\ncountry the field says `applicable: false`). It is queried by `kvk_number` when\nthe body carries one (exact), else by `entity_name` (trade-name search).\n\n`kvk_register_flags` is KVK's own register status for a Dutch BV or NV:\n`actief` and `insolventieCode` from KVK's Open Dataset Basisbedrijfsgegevens. It\nis null while KVK_REGISTER_FLAGS_ENABLED is off, for any country other than NL and\nwithout `kvk_number`. `not_covered` means the dataset has no entry (not a BV or\nNV). `not_available` means KVK did not answer. `not_applicable` means\n`kvk_number` is not 8 digits, so no call is made. None of these is a clean\nanswer, and none turns the call into a 503. `findings` lists the actions these flags\ngive, with exactly one finding when KVK and the insolvency register disagree.\n\n`credit_report` is an Openapi.com credit score, Italy only, available when\nOPENAPI_CREDIT_API_KEY is configured -- see /health. For any other country, or\na supported one with no `credit_report_identifier` (VAT number, tax code or\ncompany ID) in the body, the field says `applicable: false` rather than being\nomitted or erroring, the same pattern `insolvency_records` uses for non-NL, and\nthe `credit` tier's premium is never billed for it (app/middleware/x402.py\nprobes the country before pricing the call).\n\nThree tiers, resolved from X-Response-Quality by the x402 middleware: `fresh`\n(default; the `deep` tier, $0.88) returns pep_extended and insolvency_records;\n`enhanced` (the `extended` tier, $1.71) adds `adverse_media` from dilisense;\n`credit` ($2.45, Italy only, available when enabled) adds `credit_report`\ninstead. There is no cache-only branch, so `cached` is quoted, charged and\nserved as `fresh`. If a source of the requested tier cannot be reached the\nanswer is a 503 (`pep_source_unavailable`, `insolvency_source_unavailable`,\n`adverse_media_source_unavailable` or `credit_report_source_unavailable`),\nnever a fabricated clean screen, and the x402 gate settles only on a 2xx so the\ncall is not charged.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/entity/deep-check","href":"/api-reference/entity-deep-check","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n annotation: \"annotation\",\n code: \"code\",\n math: \"math\",\n mi: \"mi\",\n mn: \"mn\",\n mo: \"mo\",\n mrow: \"mrow\",\n msub: \"msub\",\n p: \"p\",\n semantics: \"semantics\",\n span: \"span\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"Deep check: extended PEP/RCA exposure screening, the Dutch insolvency\\nregister on every tier, adverse media on the extended tier, an\\nItalian credit report on the credit tier.\"\n }), \"\\n\", _jsxs(_components.p, {\n children: [_jsx(_components.code, {\n children: \"pep_extended\"\n }), \" is the source the base check does not return. /v1/entity/check\\nqueries the same OpenSanctions collection but filters to sanctions/enforcement\\ndatasets and reduces the answer to a boolean (app/services/sanctions.py); the\\nrole.pep/role.rca detail is fetched and discarded. This endpoint keeps it.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [_jsx(_components.code, {\n children: \"insolvency_records\"\n }), \" is the Centraal Insolventieregister (NL only; for any other\\ncountry the field says \", _jsx(_components.code, {\n children: \"applicable: false\"\n }), \"). It is queried by \", _jsx(_components.code, {\n children: \"kvk_number\"\n }), \" when\\nthe body carries one (exact), else by \", _jsx(_components.code, {\n children: \"entity_name\"\n }), \" (trade-name search).\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [_jsx(_components.code, {\n children: \"kvk_register_flags\"\n }), \" is KVK’s own register status for a Dutch BV or NV:\\n\", _jsx(_components.code, {\n children: \"actief\"\n }), \" and \", _jsx(_components.code, {\n children: \"insolventieCode\"\n }), \" from KVK’s Open Dataset Basisbedrijfsgegevens. It\\nis null while KVK_REGISTER_FLAGS_ENABLED is off, for any country other than NL and\\nwithout \", _jsx(_components.code, {\n children: \"kvk_number\"\n }), \". \", _jsx(_components.code, {\n children: \"not_covered\"\n }), \" means the dataset has no entry (not a BV or\\nNV). \", _jsx(_components.code, {\n children: \"not_available\"\n }), \" means KVK did not answer. \", _jsx(_components.code, {\n children: \"not_applicable\"\n }), \" means\\n\", _jsx(_components.code, {\n children: \"kvk_number\"\n }), \" is not 8 digits, so no call is made. None of these is a clean\\nanswer, and none turns the call into a 503. \", _jsx(_components.code, {\n children: \"findings\"\n }), \" lists the actions these flags\\ngive, with exactly one finding when KVK and the insolvency register disagree.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [_jsx(_components.code, {\n children: \"credit_report\"\n }), \" is an Openapi.com credit score, Italy only, available when\\nOPENAPI_CREDIT_API_KEY is configured — see /health. For any other country, or\\na supported one with no \", _jsx(_components.code, {\n children: \"credit_report_identifier\"\n }), \" (VAT number, tax code or\\ncompany ID) in the body, the field says \", _jsx(_components.code, {\n children: \"applicable: false\"\n }), \" rather than being\\nomitted or erroring, the same pattern \", _jsx(_components.code, {\n children: \"insolvency_records\"\n }), \" uses for non-NL, and\\nthe \", _jsx(_components.code, {\n children: \"credit\"\n }), \" tier’s premium is never billed for it (app/middleware/x402.py\\nprobes the country before pricing the call).\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Three tiers, resolved from X-Response-Quality by the x402 middleware: \", _jsx(_components.code, {\n children: \"fresh\"\n }), \"\\n(default; the \", _jsx(_components.code, {\n children: \"deep\"\n }), \" tier, \", _jsxs(_components.span, {\n className: \"katex\",\n children: [_jsx(_components.span, {\n className: \"katex-mathml\",\n children: _jsx(_components.math, {\n xmlns: \"http://www.w3.org/1998/Math/MathML\",\n children: _jsxs(_components.semantics, {\n children: [_jsxs(_components.mrow, {\n children: [_jsx(_components.mn, {\n children: \"0.88\"\n }), _jsx(_components.mo, {\n stretchy: \"false\",\n children: \")\"\n }), _jsx(_components.mi, {\n children: \"r\"\n }), _jsx(_components.mi, {\n children: \"e\"\n }), _jsx(_components.mi, {\n children: \"t\"\n }), _jsx(_components.mi, {\n children: \"u\"\n }), _jsx(_components.mi, {\n children: \"r\"\n }), _jsx(_components.mi, {\n children: \"n\"\n }), _jsx(_components.mi, {\n children: \"s\"\n }), _jsx(_components.mi, {\n children: \"p\"\n }), _jsx(_components.mi, {\n children: \"e\"\n }), _jsxs(_components.msub, {\n children: [_jsx(_components.mi, {\n children: \"p\"\n }), _jsx(_components.mi, {\n children: \"e\"\n })]\n }), _jsx(_components.mi, {\n children: \"x\"\n }), _jsx(_components.mi, {\n children: \"t\"\n }), _jsx(_components.mi, {\n children: \"e\"\n }), _jsx(_components.mi, {\n children: \"n\"\n }), _jsx(_components.mi, {\n children: \"d\"\n }), _jsx(_components.mi, {\n children: \"e\"\n }), _jsx(_components.mi, {\n children: \"d\"\n }), _jsx(_components.mi, {\n children: \"a\"\n }), _jsx(_components.mi, {\n children: \"n\"\n }), _jsx(_components.mi, {\n children: \"d\"\n }), _jsx(_components.mi, {\n children: \"i\"\n }), _jsx(_components.mi, {\n children: \"n\"\n }), _jsx(_components.mi, {\n children: \"s\"\n }), _jsx(_components.mi, {\n children: \"o\"\n }), _jsx(_components.mi, {\n children: \"l\"\n }), _jsx(_components.mi, {\n children: \"v\"\n }), _jsx(_components.mi, {\n children: \"e\"\n }), _jsx(_components.mi, {\n children: \"n\"\n }), _jsx(_components.mi, {\n children: \"c\"\n }), _jsxs(_components.msub, {\n children: [_jsx(_components.mi, {\n children: \"y\"\n }), _jsx(_components.mi, {\n children: \"r\"\n })]\n }), _jsx(_components.mi, {\n children: \"e\"\n }), _jsx(_components.mi, {\n children: \"c\"\n }), _jsx(_components.mi, {\n children: \"o\"\n }), _jsx(_components.mi, {\n children: \"r\"\n }), _jsx(_components.mi, {\n children: \"d\"\n }), _jsx(_components.mi, {\n children: \"s\"\n }), _jsx(_components.mo, {\n separator: \"true\",\n children: \";\"\n }), _jsx(_components.mi, {\n mathvariant: \"normal\",\n children: \"‘\"\n }), _jsx(_components.mi, {\n children: \"e\"\n }), _jsx(_components.mi, {\n children: \"n\"\n }), _jsx(_components.mi, {\n children: \"h\"\n }), _jsx(_components.mi, {\n children: \"a\"\n }), _jsx(_components.mi, {\n children: \"n\"\n }), _jsx(_components.mi, {\n children: \"c\"\n }), _jsx(_components.mi, {\n children: \"e\"\n }), _jsx(_components.mi, {\n children: \"d\"\n }), _jsx(_components.mi, {\n mathvariant: \"normal\",\n children: \"‘\"\n }), _jsx(_components.mo, {\n stretchy: \"false\",\n children: \"(\"\n }), _jsx(_components.mi, {\n children: \"t\"\n }), _jsx(_components.mi, {\n children: \"h\"\n }), _jsx(_components.mi, {\n children: \"e\"\n }), _jsx(_components.mi, {\n mathvariant: \"normal\",\n children: \"‘\"\n }), _jsx(_components.mi, {\n children: \"e\"\n }), _jsx(_components.mi, {\n children: \"x\"\n }), _jsx(_components.mi, {\n children: \"t\"\n }), _jsx(_components.mi, {\n children: \"e\"\n }), _jsx(_components.mi, {\n children: \"n\"\n }), _jsx(_components.mi, {\n children: \"d\"\n }), _jsx(_components.mi, {\n children: \"e\"\n }), _jsx(_components.mi, {\n children: \"d\"\n }), _jsx(_components.mi, {\n mathvariant: \"normal\",\n children: \"‘\"\n }), _jsx(_components.mi, {\n children: \"t\"\n }), _jsx(_components.mi, {\n children: \"i\"\n }), _jsx(_components.mi, {\n children: \"e\"\n }), _jsx(_components.mi, {\n children: \"r\"\n }), _jsx(_components.mo, {\n separator: \"true\",\n children: \",\"\n })]\n }), _jsx(_components.annotation, {\n encoding: \"application/x-tex\",\n children: \"0.88) returns pep_extended and insolvency_records;\\n`enhanced` (the `extended` tier, \"\n })]\n })\n })\n }), _jsx(_components.span, {\n className: \"katex-html\",\n \"aria-hidden\": \"true\",\n children: _jsxs(_components.span, {\n className: \"base\",\n children: [_jsx(_components.span, {\n className: \"strut\",\n style: {\n height: \"1em\",\n verticalAlign: \"-0.25em\"\n }\n }), _jsx(_components.span, {\n className: \"mord\",\n children: \"0.88\"\n }), _jsx(_components.span, {\n className: \"mclose\",\n children: \")\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n style: {\n marginRight: \"0.0278em\"\n },\n children: \"r\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"e\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"t\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"u\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n style: {\n marginRight: \"0.0278em\"\n },\n children: \"r\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"n\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"s\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"p\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"e\"\n }), _jsxs(_components.span, {\n className: \"mord\",\n children: [_jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"p\"\n }), _jsx(_components.span, {\n className: \"msupsub\",\n children: _jsxs(_components.span, {\n className: \"vlist-t vlist-t2\",\n children: [_jsxs(_components.span, {\n className: \"vlist-r\",\n children: [_jsx(_components.span, {\n className: \"vlist\",\n style: {\n height: \"0.1514em\"\n },\n children: _jsxs(_components.span, {\n style: {\n top: \"-2.55em\",\n marginLeft: \"0em\",\n marginRight: \"0.05em\"\n },\n children: [_jsx(_components.span, {\n className: \"pstrut\",\n style: {\n height: \"2.7em\"\n }\n }), _jsx(_components.span, {\n className: \"sizing reset-size6 size3 mtight\",\n children: _jsx(_components.span, {\n className: \"mord mathnormal mtight\",\n children: \"e\"\n })\n })]\n })\n }), _jsx(_components.span, {\n className: \"vlist-s\",\n children: \"\"\n })]\n }), _jsx(_components.span, {\n className: \"vlist-r\",\n children: _jsx(_components.span, {\n className: \"vlist\",\n style: {\n height: \"0.15em\"\n },\n children: _jsx(_components.span, {})\n })\n })]\n })\n })]\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"x\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"t\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"e\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"n\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"d\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"e\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"d\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"an\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"d\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"in\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"so\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n style: {\n marginRight: \"0.0197em\"\n },\n children: \"l\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n style: {\n marginRight: \"0.0359em\"\n },\n children: \"v\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"e\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"n\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"c\"\n }), _jsxs(_components.span, {\n className: \"mord\",\n children: [_jsx(_components.span, {\n className: \"mord mathnormal\",\n style: {\n marginRight: \"0.0359em\"\n },\n children: \"y\"\n }), _jsx(_components.span, {\n className: \"msupsub\",\n children: _jsxs(_components.span, {\n className: \"vlist-t vlist-t2\",\n children: [_jsxs(_components.span, {\n className: \"vlist-r\",\n children: [_jsx(_components.span, {\n className: \"vlist\",\n style: {\n height: \"0.1514em\"\n },\n children: _jsxs(_components.span, {\n style: {\n top: \"-2.55em\",\n marginLeft: \"-0.0359em\",\n marginRight: \"0.05em\"\n },\n children: [_jsx(_components.span, {\n className: \"pstrut\",\n style: {\n height: \"2.7em\"\n }\n }), _jsx(_components.span, {\n className: \"sizing reset-size6 size3 mtight\",\n children: _jsx(_components.span, {\n className: \"mord mathnormal mtight\",\n style: {\n marginRight: \"0.0278em\"\n },\n children: \"r\"\n })\n })]\n })\n }), _jsx(_components.span, {\n className: \"vlist-s\",\n children: \"\"\n })]\n }), _jsx(_components.span, {\n className: \"vlist-r\",\n children: _jsx(_components.span, {\n className: \"vlist\",\n style: {\n height: \"0.15em\"\n },\n children: _jsx(_components.span, {})\n })\n })]\n })\n })]\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n style: {\n marginRight: \"0.0278em\"\n },\n children: \"ecor\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"d\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"s\"\n }), _jsx(_components.span, {\n className: \"mpunct\",\n children: \";\"\n }), _jsx(_components.span, {\n className: \"mspace\",\n style: {\n marginRight: \"0.1667em\"\n }\n }), _jsx(_components.span, {\n className: \"mord\",\n children: \"‘\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"e\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"nhan\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"ce\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"d\"\n }), _jsx(_components.span, {\n className: \"mord\",\n children: \"‘\"\n }), _jsx(_components.span, {\n className: \"mopen\",\n children: \"(\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"t\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"h\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"e\"\n }), _jsx(_components.span, {\n className: \"mord\",\n children: \"‘\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"e\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"x\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"t\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"e\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"n\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"d\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"e\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"d\"\n }), _jsx(_components.span, {\n className: \"mord\",\n children: \"‘\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"t\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n children: \"i\"\n }), _jsx(_components.span, {\n className: \"mord mathnormal\",\n style: {\n marginRight: \"0.0278em\"\n },\n children: \"er\"\n }), _jsx(_components.span, {\n className: \"mpunct\",\n children: \",\"\n })]\n })\n })]\n }), \"1.71) adds \", _jsx(_components.code, {\n children: \"adverse_media\"\n }), \" from dilisense;\\n\", _jsx(_components.code, {\n children: \"credit\"\n }), \" ($2.45, Italy only, available when enabled) adds \", _jsx(_components.code, {\n children: \"credit_report\"\n }), \"\\ninstead. There is no cache-only branch, so \", _jsx(_components.code, {\n children: \"cached\"\n }), \" is quoted, charged and\\nserved as \", _jsx(_components.code, {\n children: \"fresh\"\n }), \". If a source of the requested tier cannot be reached the\\nanswer is a 503 (\", _jsx(_components.code, {\n children: \"pep_source_unavailable\"\n }), \", \", _jsx(_components.code, {\n children: \"insolvency_source_unavailable\"\n }), \",\\n\", _jsx(_components.code, {\n children: \"adverse_media_source_unavailable\"\n }), \" or \", _jsx(_components.code, {\n children: \"credit_report_source_unavailable\"\n }), \"),\\nnever a fabricated clean screen, and the x402 gate settles only on a 2xx so the\\ncall is not charged.\"]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Entity Deep Check","description":"Deep check: extended PEP/RCA exposure screening, the Dutch insolvency\nregister on every tier, adverse media on the extended tier, an\nItalian credit report on the credit tier.\n\n`pep_extended` is the source the base check does not return. /v1/entity/check\nqueries the same OpenSanctions collection but filters to sanctions/enforcement\ndatasets and reduces the answer to a boolean (app/services/sanctions.py); the\nrole.pep/role.rca detail is fetched and discarded. This endpoint keeps it.\n\n`insolvency_records` is the Centraal Insolventieregister (NL only; for any other\ncountry the field says `applicable: false`). It is queried by `kvk_number` when\nthe body carries one (exact), else by `entity_name` (trade-name search).\n\n`kvk_register_flags` is KVK's own register status for a Dutch BV or NV:\n`actief` and `insolventieCode` from KVK's Open Dataset Basisbedrijfsgegevens. It\nis null while KVK_REGISTER_FLAGS_ENABLED is off, for any country other than NL and\nwithout `kvk_number`. `not_covered` means the dataset has no entry (not a BV or\nNV). `not_available` means KVK did not answer. `not_applicable` means\n`kvk_number` is not 8 digits, so no call is made. None of these is a clean\nanswer, and none turns the call into a 503. `findings` lists the actions these flags\ngive, with exactly one finding when KVK and the insolvency register disagree.\n\n`credit_report` is an Openapi.com credit score, Italy only, available when\nOPENAPI_CREDIT_API_KEY is configured -- see /health. For any other country, or\na supported one with no `credit_report_identifier` (VAT number, tax code or\ncompany ID) in the body, the field says `applicable: false` rather than being\nomitted or erroring, the same pattern `insolvency_records` uses for non-NL, and\nthe `credit` tier's premium is never billed for it (app/middleware/x402.py\nprobes the country before pricing the call).\n\nThree tiers, resolved from X-Response-Quality by the x402 middleware: `fresh`\n(default; the `deep` tier, $0.88) returns pep_extended and insolvency_records;\n`enhanced` (the `extended` tier, $1.71) adds `adverse_media` from dilisense;\n`credit` ($2.45, Italy only, available when enabled) adds `credit_report`\ninstead. There is no cache-only branch, so `cached` is quoted, charged and\nserved as `fresh`. If a source of the requested tier cannot be reached the\nanswer is a 503 (`pep_source_unavailable`, `insolvency_source_unavailable`,\n`adverse_media_source_unavailable` or `credit_report_source_unavailable`),\nnever a fabricated clean screen, and the x402 gate settles only on a 2xx so the\ncall is not charged.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/entity/deep-check","href":"/api-reference/entity-deep-check","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"summary":"Entity Deep Check","description":"Deep check: extended PEP/RCA exposure screening, the Dutch insolvency\nregister on every tier, adverse media on the extended tier, an\nItalian credit report on the credit tier.\n\n`pep_extended` is the source the base check does not return. /v1/entity/check\nqueries the same OpenSanctions collection but filters to sanctions/enforcement\ndatasets and reduces the answer to a boolean (app/services/sanctions.py); the\nrole.pep/role.rca detail is fetched and discarded. This endpoint keeps it.\n\n`insolvency_records` is the Centraal Insolventieregister (NL only; for any other\ncountry the field says `applicable: false`). It is queried by `kvk_number` when\nthe body carries one (exact), else by `entity_name` (trade-name search).\n\n`kvk_register_flags` is KVK's own register status for a Dutch BV or NV:\n`actief` and `insolventieCode` from KVK's Open Dataset Basisbedrijfsgegevens. It\nis null while KVK_REGISTER_FLAGS_ENABLED is off, for any country other than NL and\nwithout `kvk_number`. `not_covered` means the dataset has no entry (not a BV or\nNV). `not_available` means KVK did not answer. `not_applicable` means\n`kvk_number` is not 8 digits, so no call is made. None of these is a clean\nanswer, and none turns the call into a 503. `findings` lists the actions these flags\ngive, with exactly one finding when KVK and the insolvency register disagree.\n\n`credit_report` is an Openapi.com credit score, Italy only, available when\nOPENAPI_CREDIT_API_KEY is configured -- see /health. For any other country, or\na supported one with no `credit_report_identifier` (VAT number, tax code or\ncompany ID) in the body, the field says `applicable: false` rather than being\nomitted or erroring, the same pattern `insolvency_records` uses for non-NL, and\nthe `credit` tier's premium is never billed for it (app/middleware/x402.py\nprobes the country before pricing the call).\n\nThree tiers, resolved from X-Response-Quality by the x402 middleware: `fresh`\n(default; the `deep` tier, $0.88) returns pep_extended and insolvency_records;\n`enhanced` (the `extended` tier, $1.71) adds `adverse_media` from dilisense;\n`credit` ($2.45, Italy only, available when enabled) adds `credit_report`\ninstead. There is no cache-only branch, so `cached` is quoted, charged and\nserved as `fresh`. If a source of the requested tier cannot be reached the\nanswer is a 503 (`pep_source_unavailable`, `insolvency_source_unavailable`,\n`adverse_media_source_unavailable` or `credit_report_source_unavailable`),\nnever a fabricated clean screen, and the x402 gate settles only on a 2xx so the\ncall is not charged.","operationId":"entity_deep_check_v1_entity_deep_check_post","requestBody":"06510833-87cc-4fe5-bc6a-080a060851c5","responses":{"200":"185edb19-5c54-40a1-85b7-4461a3f987d7","422":"87341c82-b58e-4ec7-915e-394884e66d9d","503":"83933b78-7a3d-4f80-8e2e-9f1473a22cd7"},"security":["5b3e9f80-4e6d-4653-a03a-6610055505bf"],"method":"post","type":"path","servers":["5105a447-54cf-43f8-8320-a200b5dbda1d"],"path":"/v1/entity/deep-check","baseUrlOptions":["https://api.limitguard.ai"],"title":"Entity Deep Check","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated","disableProxy":true},"dependencies":{"parameters":{},"requestBody":{"content":{"application/json":{"schema":{"properties":{"entity_name":{"type":"string","maxLength":500,"minLength":1,"title":"Entity Name","description":"Legal entity or person name","isRequired":true,"uniqueKey":"entity_name","typeLabel":"string"},"country":{"type":"string","maxLength":2,"minLength":2,"title":"Country","description":"ISO 3166-1 alpha-2 country code","isRequired":true,"uniqueKey":"country","typeLabel":"string"},"kvk_number":{"oneOf":[{"type":"string","title":"Kvk Number","description":"Dutch KVK number (8 digits); enables an exact insolvency-register lookup and, while KVK_REGISTER_FLAGS_ENABLED is on, the KVK register flags lookup","uniqueKey":"kvk_number.oneOf.0","typeLabel":"string"},{"type":"null","title":"Kvk Number","description":"Dutch KVK number (8 digits); enables an exact insolvency-register lookup and, while KVK_REGISTER_FLAGS_ENABLED is on, the KVK register flags lookup","uniqueKey":"kvk_number.oneOf.1","typeLabel":"null"}],"uniqueKey":"kvk_number","typeLabel":"string | null"},"credit_report_identifier":{"oneOf":[{"type":"string","title":"Credit Report Identifier","description":"VAT number, tax code or company ID for the `credit` tier's provider (Italy only today); without it the tier still runs but credit_report comes back applicable: false, same as an unsupported country","maxLength":32,"uniqueKey":"credit_report_identifier.oneOf.0","typeLabel":"string"},{"type":"null","title":"Credit Report Identifier","description":"VAT number, tax code or company ID for the `credit` tier's provider (Italy only today); without it the tier still runs but credit_report comes back applicable: false, same as an unsupported country","uniqueKey":"credit_report_identifier.oneOf.1","typeLabel":"null"}],"uniqueKey":"credit_report_identifier","typeLabel":"string | null"}},"additionalProperties":false,"type":"object","required":["entity_name","country"],"title":"DeepCheckRequest","description":"Request for POST /v1/entity/deep-check.\n\nTakes entity fields rather than an ``entity_id`` from a prior check: the audit\ntrail is keyed by sha256(entity_name) and is one-way, so an id could not be\nresolved back to the name the screens have to query. ``kvk_number`` is optional\nand consulted by the insolvency source: the Centraal\nInsolventieregister keys ``searchUndertaking`` on the KvK number, which is an\nexact lookup where a trade-name search is a fuzzy one. While\nKVK_REGISTER_FLAGS_ENABLED is on, it also drives the KVK register flags lookup. ``credit_report_identifier``\nis only consulted by the `credit` tier's source: Openapi.com's Italian\ncredit-score lookup keys on a VAT number, tax code or company ID rather than a\nname, and reports back in `identifier_type` which one it matched.","uniqueKey":"","typeLabel":"DeepCheckRequest · object"},"examples":{"Example":{"title":"Example","value":{"entity_name":"\u003cstring>","country":"\u003cstring>","kvk_number":"\u003cstring>","credit_report_identifier":"\u003cstring>"}}},"exampleType":"generated"}},"required":true,"exampleType":"generated"},"responses":{"185edb19-5c54-40a1-85b7-4461a3f987d7":{"description":"Successful Response","content":{"application/json":{"schema":{"properties":{"entity_name":{"type":"string","title":"Entity Name","isRequired":true,"uniqueKey":"entity_name","typeLabel":"string"},"country":{"type":"string","title":"Country","isRequired":true,"uniqueKey":"country","typeLabel":"string"},"sources_returned":{"items":{"type":"string","uniqueKey":"sources_returned.items.[INDEX]","typeLabel":"string"},"type":"array","title":"Sources Returned","description":"Sources actually run; equals EnhancedCheckHint.adds","isRequired":true,"uniqueKey":"sources_returned","typeLabel":"string[]"},"pep_extended":{"properties":{"screened":{"type":"boolean","title":"Screened","description":"True when OpenSanctions was actually queried","isRequired":true,"uniqueKey":"pep_extended.screened","typeLabel":"boolean"},"pep_exposure":{"type":"boolean","title":"Pep Exposure","description":"True when at least one role.pep/role.rca match cleared threshold","isRequired":true,"uniqueKey":"pep_extended.pep_exposure","typeLabel":"boolean"},"match_count":{"type":"integer","minimum":0,"title":"Match Count","isRequired":true,"uniqueKey":"pep_extended.match_count","typeLabel":"integer"},"retrieved_at":{"type":"string","title":"Retrieved At","description":"ISO 8601 UTC timestamp of the query","isRequired":true,"uniqueKey":"pep_extended.retrieved_at","typeLabel":"string"},"matches":{"items":{"properties":{"caption":{"type":"string","title":"Caption","description":"Matched entity display name","isRequired":true,"uniqueKey":"pep_extended.matches.items.[INDEX].caption","typeLabel":"string"},"schema_type":{"type":"string","title":"Schema Type","description":"FollowTheMoney schema, e.g. Person","isRequired":true,"uniqueKey":"pep_extended.matches.items.[INDEX].schema_type","typeLabel":"string"},"topics":{"items":{"type":"string","uniqueKey":"pep_extended.matches.items.[INDEX].topics.items.[INDEX]","typeLabel":"string"},"type":"array","title":"Topics","description":"Risk topics, e.g. role.pep, role.rca","isRequired":true,"uniqueKey":"pep_extended.matches.items.[INDEX].topics","typeLabel":"string[]"},"score":{"type":"number","maximum":1,"minimum":0,"title":"Score","description":"Match confidence","isRequired":true,"uniqueKey":"pep_extended.matches.items.[INDEX].score","typeLabel":"number"},"datasets":{"items":{"type":"string","uniqueKey":"pep_extended.matches.items.[INDEX].datasets.items.[INDEX]","typeLabel":"string"},"type":"array","title":"Datasets","uniqueKey":"pep_extended.matches.items.[INDEX].datasets","typeLabel":"string[]"},"countries":{"items":{"type":"string","uniqueKey":"pep_extended.matches.items.[INDEX].countries.items.[INDEX]","typeLabel":"string"},"type":"array","title":"Countries","uniqueKey":"pep_extended.matches.items.[INDEX].countries","typeLabel":"string[]"},"birth_date":{"oneOf":[{"type":"string","title":"Birth Date","uniqueKey":"pep_extended.matches.items.[INDEX].birth_date.oneOf.0","typeLabel":"string"},{"type":"null","title":"Birth Date","uniqueKey":"pep_extended.matches.items.[INDEX].birth_date.oneOf.1","typeLabel":"null"}],"uniqueKey":"pep_extended.matches.items.[INDEX].birth_date","typeLabel":"string | null"}},"type":"object","required":["caption","schema_type","topics","score"],"title":"PepMatch","description":"One OpenSanctions PEP/RCA match, projected to the fields we stand behind.","uniqueKey":"pep_extended.matches.items.[INDEX]","typeLabel":"PepMatch · object"},"type":"array","title":"Matches","uniqueKey":"pep_extended.matches","typeLabel":"PepMatch · object[]"},"truncated":{"type":"boolean","title":"Truncated","description":"True when matches were capped","default":false,"uniqueKey":"pep_extended.truncated","typeLabel":"boolean"}},"type":"object","required":["screened","pep_exposure","match_count","retrieved_at"],"title":"PepScreenResult","description":"Result of the `pep_extended` source. `screened` is never False on a 200.\n\nThere is no code path that returns this model without having queried\nOpenSanctions: app/services/pep.py raises rather than fabricating a clean screen,\nand the router turns that into a 503 so the payment is never settled.","isRequired":true,"uniqueKey":"pep_extended","typeLabel":"PepScreenResult · object"},"processing_time_ms":{"type":"integer","minimum":0,"title":"Processing Time Ms","isRequired":true,"uniqueKey":"processing_time_ms","typeLabel":"integer"},"quality":{"type":"string","title":"Quality","description":"deep (fresh), extended (enhanced) or credit; see DEEP_CHECK_TIER_NAMES. `credit` only resolves while OPENAPI_CREDIT_API_KEY is configured.","default":"deep","uniqueKey":"quality","typeLabel":"string"},"adverse_media":{"oneOf":[{"type":"object","title":"AdverseMediaResult","description":"Populated only on a tier whose adds include `adverse_media`. None means the tier did not include it -- never that a screen ran and found nothing.","required":["screened","adverse_media_found","match_count","retrieved_at"],"properties":{"screened":{"type":"boolean","title":"Screened","description":"True when dilisense was actually queried","isRequired":true,"uniqueKey":"adverse_media.oneOf.0.screened","typeLabel":"boolean"},"adverse_media_found":{"type":"boolean","title":"Adverse Media Found","description":"True when the vendor reported at least one news exposure","isRequired":true,"uniqueKey":"adverse_media.oneOf.0.adverse_media_found","typeLabel":"boolean"},"match_count":{"type":"integer","minimum":0,"title":"Match Count","description":"Total exposures reported (total_hits)","isRequired":true,"uniqueKey":"adverse_media.oneOf.0.match_count","typeLabel":"integer"},"retrieved_at":{"type":"string","title":"Retrieved At","description":"ISO 8601 UTC timestamp of the query","isRequired":true,"uniqueKey":"adverse_media.oneOf.0.retrieved_at","typeLabel":"string"},"category_hits":{"additionalProperties":{"type":"integer","uniqueKey":"adverse_media.oneOf.0.category_hits.additionalProperties","typeLabel":"integer"},"type":"object","title":"Category Hits","description":"Exposures per dilisense category","uniqueKey":"adverse_media.oneOf.0.category_hits","typeLabel":"Category Hits · object"},"articles":{"items":{"properties":{"headline":{"type":"string","title":"Headline","description":"Article headline as indexed by the vendor","isRequired":true,"uniqueKey":"adverse_media.oneOf.0.articles.items.[INDEX].headline","typeLabel":"string"},"source_link":{"type":"string","title":"Source Link","description":"URL of the article","isRequired":true,"uniqueKey":"adverse_media.oneOf.0.articles.items.[INDEX].source_link","typeLabel":"string"},"category":{"type":"string","title":"Category","description":"dilisense exposure category, e.g. financial_crime","isRequired":true,"uniqueKey":"adverse_media.oneOf.0.articles.items.[INDEX].category","typeLabel":"string"},"published_at":{"oneOf":[{"type":"string","title":"Published At","description":"ISO 8601 timestamp","uniqueKey":"adverse_media.oneOf.0.articles.items.[INDEX].published_at.oneOf.0","typeLabel":"string"},{"type":"null","title":"Published At","description":"ISO 8601 timestamp","uniqueKey":"adverse_media.oneOf.0.articles.items.[INDEX].published_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"adverse_media.oneOf.0.articles.items.[INDEX].published_at","typeLabel":"string | null"},"language":{"oneOf":[{"type":"string","title":"Language","description":"ISO 639-1 language code","uniqueKey":"adverse_media.oneOf.0.articles.items.[INDEX].language.oneOf.0","typeLabel":"string"},{"type":"null","title":"Language","description":"ISO 639-1 language code","uniqueKey":"adverse_media.oneOf.0.articles.items.[INDEX].language.oneOf.1","typeLabel":"null"}],"uniqueKey":"adverse_media.oneOf.0.articles.items.[INDEX].language","typeLabel":"string | null"},"snippet":{"oneOf":[{"type":"string","title":"Snippet","description":"Bounded plain-text excerpt","uniqueKey":"adverse_media.oneOf.0.articles.items.[INDEX].snippet.oneOf.0","typeLabel":"string"},{"type":"null","title":"Snippet","description":"Bounded plain-text excerpt","uniqueKey":"adverse_media.oneOf.0.articles.items.[INDEX].snippet.oneOf.1","typeLabel":"null"}],"uniqueKey":"adverse_media.oneOf.0.articles.items.[INDEX].snippet","typeLabel":"string | null"}},"type":"object","required":["headline","source_link","category"],"title":"AdverseMediaArticle","description":"One adverse-media article, projected to the fields we stand behind.\n\nField names follow the dilisense `checkIndividual` article object (headline,\nsource_link, timestamp, language, body). `snippet` is the body with its ``\u003cp>``\nmarkup stripped and bounded; `category` is the news-exposure bucket dilisense\nfiled the article under.","uniqueKey":"adverse_media.oneOf.0.articles.items.[INDEX]","typeLabel":"AdverseMediaArticle · object"},"type":"array","title":"Articles","uniqueKey":"adverse_media.oneOf.0.articles","typeLabel":"AdverseMediaArticle · object[]"},"truncated":{"type":"boolean","title":"Truncated","description":"True when articles were capped below match_count","default":false,"uniqueKey":"adverse_media.oneOf.0.truncated","typeLabel":"boolean"}},"uniqueKey":"adverse_media.oneOf.0","typeLabel":"AdverseMediaResult · object"},{"type":"null","description":"Populated only on a tier whose adds include `adverse_media`. None means the tier did not include it -- never that a screen ran and found nothing.","uniqueKey":"adverse_media.oneOf.1","typeLabel":"null"}],"uniqueKey":"adverse_media","typeLabel":"AdverseMediaResult · object | null"},"insolvency_records":{"oneOf":[{"type":"object","title":"InsolvencyRecordsResult","description":"Dutch Centraal Insolventieregister screen; on every tier. `applicable: false` (never null) when `country` is not NL.","required":["screened","applicable","found","truncated","retrieved_at"],"properties":{"screened":{"type":"boolean","title":"Screened","description":"True when the register was actually queried","isRequired":true,"uniqueKey":"insolvency_records.oneOf.0.screened","typeLabel":"boolean"},"applicable":{"type":"boolean","title":"Applicable","description":"False when `country` is outside the register's jurisdiction (NL)","isRequired":true,"uniqueKey":"insolvency_records.oneOf.0.applicable","typeLabel":"boolean"},"found":{"type":"boolean","title":"Found","description":"True when at least one insolvency proceeding was listed","isRequired":true,"uniqueKey":"insolvency_records.oneOf.0.found","typeLabel":"boolean"},"truncated":{"type":"boolean","title":"Truncated","description":"True when more cases exist than are returned","isRequired":true,"uniqueKey":"insolvency_records.oneOf.0.truncated","typeLabel":"boolean"},"retrieved_at":{"type":"string","title":"Retrieved At","description":"ISO 8601 UTC timestamp of the query","isRequired":true,"uniqueKey":"insolvency_records.oneOf.0.retrieved_at","typeLabel":"string"},"jurisdiction":{"type":"string","title":"Jurisdiction","description":"Jurisdiction the register covers","default":"NL","uniqueKey":"insolvency_records.oneOf.0.jurisdiction","typeLabel":"string"},"query_by":{"oneOf":[{"type":"string","title":"Query By","description":"kvk_number or name; None when not applicable","uniqueKey":"insolvency_records.oneOf.0.query_by.oneOf.0","typeLabel":"string"},{"type":"null","title":"Query By","description":"kvk_number or name; None when not applicable","uniqueKey":"insolvency_records.oneOf.0.query_by.oneOf.1","typeLabel":"null"}],"uniqueKey":"insolvency_records.oneOf.0.query_by","typeLabel":"string | null"},"match_count":{"oneOf":[{"type":"integer","title":"Match Count","description":"Identifiers the search returned; None when the register reported too many to list","minimum":0,"uniqueKey":"insolvency_records.oneOf.0.match_count.oneOf.0","typeLabel":"integer"},{"type":"null","title":"Match Count","description":"Identifiers the search returned; None when the register reported too many to list","uniqueKey":"insolvency_records.oneOf.0.match_count.oneOf.1","typeLabel":"null"}],"uniqueKey":"insolvency_records.oneOf.0.match_count","typeLabel":"integer | null"},"records":{"items":{"properties":{"publication_id":{"type":"string","title":"Publication Id","description":"publicatieKenmerk; the register's identifier for the case","isRequired":true,"uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].publication_id","typeLabel":"string"},"insolvency_number":{"oneOf":[{"type":"string","title":"Insolvency Number","description":"insolventienummer, e.g. F.13/24/123","uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].insolvency_number.oneOf.0","typeLabel":"string"},{"type":"null","title":"Insolvency Number","description":"insolventienummer, e.g. F.13/24/123","uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].insolvency_number.oneOf.1","typeLabel":"null"}],"uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].insolvency_number","typeLabel":"string | null"},"court":{"oneOf":[{"type":"string","title":"Court","description":"behandelendeInstantieCode: the court handling the case","uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].court.oneOf.0","typeLabel":"string"},{"type":"null","title":"Court","description":"behandelendeInstantieCode: the court handling the case","uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].court.oneOf.1","typeLabel":"null"}],"uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].court","typeLabel":"string | null"},"subject_type":{"oneOf":[{"type":"string","title":"Subject Type","description":"legal_entity or natural_person, as the register classifies the insolvent party","uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].subject_type.oneOf.0","typeLabel":"string"},{"type":"null","title":"Subject Type","description":"legal_entity or natural_person, as the register classifies the insolvent party","uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].subject_type.oneOf.1","typeLabel":"null"}],"uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].subject_type","typeLabel":"string | null"},"latest_publication":{"oneOf":[{"type":"object","title":"InsolvencyPublication","description":"The most recent publication on an insolvency case, as the register lists it.","properties":{"code":{"oneOf":[{"type":"string","title":"Code","description":"publicatieSoortCode from the register","uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].latest_publication.oneOf.0.code.oneOf.0","typeLabel":"string"},{"type":"null","title":"Code","description":"publicatieSoortCode from the register","uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].latest_publication.oneOf.0.code.oneOf.1","typeLabel":"null"}],"uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].latest_publication.oneOf.0.code","typeLabel":"string | null"},"description":{"oneOf":[{"type":"string","title":"Description","description":"publicatieOmschrijving from the register","uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].latest_publication.oneOf.0.description.oneOf.0","typeLabel":"string"},{"type":"null","title":"Description","description":"publicatieOmschrijving from the register","uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].latest_publication.oneOf.0.description.oneOf.1","typeLabel":"null"}],"uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].latest_publication.oneOf.0.description","typeLabel":"string | null"},"date":{"oneOf":[{"type":"string","title":"Date","description":"publicatieDatum as published (YYYY-MM-DD)","uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].latest_publication.oneOf.0.date.oneOf.0","typeLabel":"string"},{"type":"null","title":"Date","description":"publicatieDatum as published (YYYY-MM-DD)","uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].latest_publication.oneOf.0.date.oneOf.1","typeLabel":"null"}],"uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].latest_publication.oneOf.0.date","typeLabel":"string | null"}},"uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].latest_publication.oneOf.0","typeLabel":"InsolvencyPublication · object"},{"type":"null","uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].latest_publication.oneOf.1","typeLabel":"null"}],"uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX].latest_publication","typeLabel":"InsolvencyPublication · object | null"}},"type":"object","required":["publication_id"],"title":"InsolvencyRecord","description":"One insolvency case from the Centraal Insolventieregister.\n\nProjected from the getCase document to the fields we stand behind; the raw\ndocument is never echoed. Absent elements are None, not fabricated.","uniqueKey":"insolvency_records.oneOf.0.records.items.[INDEX]","typeLabel":"InsolvencyRecord · object"},"type":"array","title":"Records","description":"Up to 5 expanded cases","uniqueKey":"insolvency_records.oneOf.0.records","typeLabel":"InsolvencyRecord · object[]"}},"uniqueKey":"insolvency_records.oneOf.0","typeLabel":"InsolvencyRecordsResult · object"},{"type":"null","description":"Dutch Centraal Insolventieregister screen; on every tier. `applicable: false` (never null) when `country` is not NL.","uniqueKey":"insolvency_records.oneOf.1","typeLabel":"null"}],"uniqueKey":"insolvency_records","typeLabel":"InsolvencyRecordsResult · object | null"},"kvk_register_flags":{"oneOf":[{"type":"object","title":"KvkRegisterFlagsResult","description":"KVK's own register flags beside the insolvency register. None while KVK_REGISTER_FLAGS_ENABLED is off, for a country other than NL, or without kvk_number.","required":["status"],"properties":{"status":{"type":"string","enum":["ok","not_covered","not_available","not_applicable"],"title":"Status","isRequired":true,"uniqueKey":"kvk_register_flags.oneOf.0.status","typeLabel":"enum\u003cstring>"},"active":{"oneOf":[{"type":"boolean","title":"Active","description":"KVK `actief`: True for J, False for N. None unless status is ok","uniqueKey":"kvk_register_flags.oneOf.0.active.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Active","description":"KVK `actief`: True for J, False for N. None unless status is ok","uniqueKey":"kvk_register_flags.oneOf.0.active.oneOf.1","typeLabel":"null"}],"uniqueKey":"kvk_register_flags.oneOf.0.active","typeLabel":"boolean | null"},"insolvency_code":{"oneOf":[{"type":"string","title":"Insolvency Code","description":"KVK `insolventieCode`. None when ok with no code, or not ok","enum":["FAIL","SSAN","SURS"],"uniqueKey":"kvk_register_flags.oneOf.0.insolvency_code.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","title":"Insolvency Code","description":"KVK `insolventieCode`. None when ok with no code, or not ok","uniqueKey":"kvk_register_flags.oneOf.0.insolvency_code.oneOf.1","typeLabel":"null"}],"uniqueKey":"kvk_register_flags.oneOf.0.insolvency_code","typeLabel":"enum\u003cstring> | null"},"insolvency_label":{"oneOf":[{"type":"string","title":"Insolvency Label","description":"bankruptcy, debt restructuring or suspension of payments","uniqueKey":"kvk_register_flags.oneOf.0.insolvency_label.oneOf.0","typeLabel":"string"},{"type":"null","title":"Insolvency Label","description":"bankruptcy, debt restructuring or suspension of payments","uniqueKey":"kvk_register_flags.oneOf.0.insolvency_label.oneOf.1","typeLabel":"null"}],"uniqueKey":"kvk_register_flags.oneOf.0.insolvency_label","typeLabel":"string | null"},"legal_form_code":{"oneOf":[{"type":"string","title":"Legal Form Code","description":"KVK `rechtsvormCode` (BV or NV)","uniqueKey":"kvk_register_flags.oneOf.0.legal_form_code.oneOf.0","typeLabel":"string"},{"type":"null","title":"Legal Form Code","description":"KVK `rechtsvormCode` (BV or NV)","uniqueKey":"kvk_register_flags.oneOf.0.legal_form_code.oneOf.1","typeLabel":"null"}],"uniqueKey":"kvk_register_flags.oneOf.0.legal_form_code","typeLabel":"string | null"},"retrieved_at":{"oneOf":[{"type":"string","title":"Retrieved At","description":"ISO 8601 UTC time KVK gave this answer","uniqueKey":"kvk_register_flags.oneOf.0.retrieved_at.oneOf.0","typeLabel":"string"},{"type":"null","title":"Retrieved At","description":"ISO 8601 UTC time KVK gave this answer","uniqueKey":"kvk_register_flags.oneOf.0.retrieved_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"kvk_register_flags.oneOf.0.retrieved_at","typeLabel":"string | null"},"from_store":{"type":"boolean","title":"From Store","description":"True when served from the 7-day store","default":false,"uniqueKey":"kvk_register_flags.oneOf.0.from_store","typeLabel":"boolean"},"error":{"oneOf":[{"type":"string","title":"Error","description":"Why the source did not answer, when not_available","uniqueKey":"kvk_register_flags.oneOf.0.error.oneOf.0","typeLabel":"string"},{"type":"null","title":"Error","description":"Why the source did not answer, when not_available","uniqueKey":"kvk_register_flags.oneOf.0.error.oneOf.1","typeLabel":"null"}],"uniqueKey":"kvk_register_flags.oneOf.0.error","typeLabel":"string | null"},"attribution":{"oneOf":[{"type":"string","title":"Attribution","description":"CC BY 4.0 attribution, set when status is ok","uniqueKey":"kvk_register_flags.oneOf.0.attribution.oneOf.0","typeLabel":"string"},{"type":"null","title":"Attribution","description":"CC BY 4.0 attribution, set when status is ok","uniqueKey":"kvk_register_flags.oneOf.0.attribution.oneOf.1","typeLabel":"null"}],"uniqueKey":"kvk_register_flags.oneOf.0.attribution","typeLabel":"string | null"}},"uniqueKey":"kvk_register_flags.oneOf.0","typeLabel":"KvkRegisterFlagsResult · object"},{"type":"null","description":"KVK's own register flags beside the insolvency register. None while KVK_REGISTER_FLAGS_ENABLED is off, for a country other than NL, or without kvk_number.","uniqueKey":"kvk_register_flags.oneOf.1","typeLabel":"null"}],"uniqueKey":"kvk_register_flags","typeLabel":"KvkRegisterFlagsResult · object | null"},"findings":{"items":{"properties":{"action":{"type":"string","minLength":1,"title":"Action","isRequired":true,"uniqueKey":"findings.items.[INDEX].action","typeLabel":"string"},"why":{"type":"string","minLength":1,"title":"Why","isRequired":true,"uniqueKey":"findings.items.[INDEX].why","typeLabel":"string"},"expected_result":{"type":"string","minLength":1,"title":"Expected Result","isRequired":true,"uniqueKey":"findings.items.[INDEX].expected_result","typeLabel":"string"}},"type":"object","required":["action","why","expected_result"],"title":"Finding","uniqueKey":"findings.items.[INDEX]","typeLabel":"Finding · object"},"type":"array","title":"Findings","description":"Actions from the KVK register flags. One finding when the two registers disagree","uniqueKey":"findings","typeLabel":"Finding · object[]"},"credit_report":{"oneOf":[{"type":"object","title":"CreditReportResult","description":"Populated only on the `credit` tier. None means the tier did not include it -- never that a screen ran and found no credit risk. `applicable: false` inside it (never omission) means the tier was requested but the country has no provider or no identifier was sent.","required":["screened","applicable","country","retrieved_at"],"properties":{"screened":{"type":"boolean","title":"Screened","description":"True when the provider was actually queried","isRequired":true,"uniqueKey":"credit_report.oneOf.0.screened","typeLabel":"boolean"},"applicable":{"type":"boolean","title":"Applicable","description":"False when `country` has no registered provider (Italy only today) or no credit_report_identifier was supplied -- a different fact from a clean negative, and never to be read as one","isRequired":true,"uniqueKey":"credit_report.oneOf.0.applicable","typeLabel":"boolean"},"country":{"type":"string","title":"Country","description":"ISO 3166-1 alpha-2 country that was requested","isRequired":true,"uniqueKey":"credit_report.oneOf.0.country","typeLabel":"string"},"retrieved_at":{"type":"string","title":"Retrieved At","description":"ISO 8601 UTC timestamp of the query","isRequired":true,"uniqueKey":"credit_report.oneOf.0.retrieved_at","typeLabel":"string"},"risk_score":{"oneOf":[{"type":"string","title":"Risk Score","description":"Normalised verdict: green, yellow, red, or unknown; None when not applicable","uniqueKey":"credit_report.oneOf.0.risk_score.oneOf.0","typeLabel":"string"},{"type":"null","title":"Risk Score","description":"Normalised verdict: green, yellow, red, or unknown; None when not applicable","uniqueKey":"credit_report.oneOf.0.risk_score.oneOf.1","typeLabel":"null"}],"uniqueKey":"credit_report.oneOf.0.risk_score","typeLabel":"string | null"},"risk_band_available":{"type":"boolean","title":"Risk Band Available","description":"True when the provider returned an assessment rather than grey/ND","default":false,"uniqueKey":"credit_report.oneOf.0.risk_band_available","typeLabel":"boolean"},"provider":{"oneOf":[{"type":"string","title":"Provider","description":"Identifier of the provider queried; None when not applicable","uniqueKey":"credit_report.oneOf.0.provider.oneOf.0","typeLabel":"string"},{"type":"null","title":"Provider","description":"Identifier of the provider queried; None when not applicable","uniqueKey":"credit_report.oneOf.0.provider.oneOf.1","typeLabel":"null"}],"uniqueKey":"credit_report.oneOf.0.provider","typeLabel":"string | null"},"organization_name":{"oneOf":[{"type":"string","title":"Organization Name","description":"Company name as held by the provider","uniqueKey":"credit_report.oneOf.0.organization_name.oneOf.0","typeLabel":"string"},{"type":"null","title":"Organization Name","description":"Company name as held by the provider","uniqueKey":"credit_report.oneOf.0.organization_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"credit_report.oneOf.0.organization_name","typeLabel":"string | null"},"identifier_type":{"oneOf":[{"type":"string","title":"Identifier Type","description":"Which identifier resolved the lookup: vat, tax or company_id","uniqueKey":"credit_report.oneOf.0.identifier_type.oneOf.0","typeLabel":"string"},{"type":"null","title":"Identifier Type","description":"Which identifier resolved the lookup: vat, tax or company_id","uniqueKey":"credit_report.oneOf.0.identifier_type.oneOf.1","typeLabel":"null"}],"uniqueKey":"credit_report.oneOf.0.identifier_type","typeLabel":"string | null"}},"uniqueKey":"credit_report.oneOf.0","typeLabel":"CreditReportResult · object"},{"type":"null","description":"Populated only on the `credit` tier. None means the tier did not include it -- never that a screen ran and found no credit risk. `applicable: false` inside it (never omission) means the tier was requested but the country has no provider or no identifier was sent.","uniqueKey":"credit_report.oneOf.1","typeLabel":"null"}],"uniqueKey":"credit_report","typeLabel":"CreditReportResult · object | null"},"disclaimers":{"items":{"type":"string","uniqueKey":"disclaimers.items.[INDEX]","typeLabel":"string"},"type":"array","title":"Disclaimers","uniqueKey":"disclaimers","typeLabel":"string[]"},"sandbox":{"type":"boolean","title":"Sandbox","default":false,"uniqueKey":"sandbox","typeLabel":"boolean"},"version":{"type":"string","title":"Version","default":"1.0","uniqueKey":"version","typeLabel":"string"}},"type":"object","required":["entity_name","country","sources_returned","pep_extended","processing_time_ms"],"title":"DeepCheckResponse","description":"Response from /v1/entity/deep-check.\n\n``sources_returned`` is built from payment.DEEP_CHECK_TIER_ADDS[tier] -- the same\ntable enhanced_check_hint advertises -- so what was promised and what was delivered\nare one value. A name may only join that table together with the field that fills\nit on that tier.","uniqueKey":"","typeLabel":"DeepCheckResponse · object"},"examples":{"Example":{"title":"Example","value":{"entity_name":"\u003cstring>","country":"\u003cstring>","sources_returned":["\u003cstring>"],"pep_extended":{"screened":true,"pep_exposure":true,"match_count":1,"retrieved_at":"\u003cstring>","matches":[{"caption":"\u003cstring>","schema_type":"\u003cstring>","topics":["\u003cstring>"],"score":0.5,"datasets":["\u003cstring>"],"countries":["\u003cstring>"],"birth_date":"\u003cstring>"}],"truncated":false},"processing_time_ms":1,"quality":"deep","adverse_media":{"screened":true,"adverse_media_found":true,"match_count":1,"retrieved_at":"\u003cstring>","category_hits":{},"articles":[{"headline":"\u003cstring>","source_link":"\u003cstring>","category":"\u003cstring>","published_at":"\u003cstring>","language":"\u003cstring>","snippet":"\u003cstring>"}],"truncated":false},"insolvency_records":{"screened":true,"applicable":true,"found":true,"truncated":true,"retrieved_at":"\u003cstring>","jurisdiction":"NL","query_by":"\u003cstring>","match_count":1,"records":[{"publication_id":"\u003cstring>","insolvency_number":"\u003cstring>","court":"\u003cstring>","subject_type":"\u003cstring>","latest_publication":{"code":"\u003cstring>","description":"\u003cstring>","date":"\u003cstring>"}}]},"kvk_register_flags":{"status":"ok","active":true,"insolvency_code":"FAIL","insolvency_label":"\u003cstring>","legal_form_code":"\u003cstring>","retrieved_at":"\u003cstring>","from_store":false,"error":"\u003cstring>","attribution":"\u003cstring>"},"findings":[{"action":"\u003cstring>","why":"\u003cstring>","expected_result":"\u003cstring>"}],"credit_report":{"screened":true,"applicable":true,"country":"\u003cstring>","retrieved_at":"\u003cstring>","risk_score":"\u003cstring>","risk_band_available":false,"provider":"\u003cstring>","organization_name":"\u003cstring>","identifier_type":"\u003cstring>"},"disclaimers":["\u003cstring>"],"sandbox":false,"version":"1.0"}}},"exampleType":"generated"}},"exampleType":"generated"},"87341c82-b58e-4ec7-915e-394884e66d9d":{"description":"Validation error","content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"field":{"type":"string","title":"Field","description":"The rejected field's name (the last part of its location)","isRequired":true,"uniqueKey":"detail.items.[INDEX].field","typeLabel":"string"},"message":{"type":"string","title":"Message","description":"Why it was rejected; generic unless the rule is ours","isRequired":true,"uniqueKey":"detail.items.[INDEX].message","typeLabel":"string"}},"type":"object","required":["field","message"],"title":"ValidationErrorItem","description":"One rejected field of a 422.","uniqueKey":"detail.items.[INDEX]","typeLabel":"ValidationErrorItem · object"},"type":"array","title":"Detail","isRequired":true,"uniqueKey":"detail","typeLabel":"ValidationErrorItem · object[]"},"type":{"type":"string","title":"Type","default":"https://docs.limitguard.ai/errors#validation-error","uniqueKey":"type","typeLabel":"string"},"title":{"type":"string","title":"Title","default":"Validation Error","uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","title":"Status","default":422,"uniqueKey":"status","typeLabel":"integer"},"instance":{"oneOf":[{"type":"string","title":"Instance","uniqueKey":"instance.oneOf.0","typeLabel":"string"},{"type":"null","title":"Instance","uniqueKey":"instance.oneOf.1","typeLabel":"null"}],"uniqueKey":"instance","typeLabel":"string | null"},"errorCode":{"type":"string","title":"Errorcode","default":"validation_error","uniqueKey":"errorCode","typeLabel":"string"},"note":{"type":"string","title":"Note","default":"Nothing was charged.","uniqueKey":"note","typeLabel":"string"}},"type":"object","required":["detail"],"title":"ValidationErrorResponse","description":"RFC 7807 body of a 422 request validation error.\n\nThe shape main.py's RequestValidationError handler sends, so a generated client\nparses `detail` as the list it is, not as a string.","uniqueKey":"","typeLabel":"ValidationErrorResponse · object"},"examples":{"Example":{"title":"Example","value":{"detail":[{"field":"\u003cstring>","message":"\u003cstring>"}],"type":"https://docs.limitguard.ai/errors#validation-error","title":"Validation Error","status":422,"instance":"\u003cstring>","errorCode":"validation_error","note":"Nothing was charged."}}},"exampleType":"generated"}},"exampleType":"generated"},"83933b78-7a3d-4f80-8e2e-9f1473a22cd7":{"description":"A source of the requested tier is unavailable; payment is not settled","content":{"application/json":{"schema":{"properties":{"title":{"type":"string","title":"Title","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","title":"Status","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"type":{"type":"string","title":"Type","default":"about:blank","uniqueKey":"type","typeLabel":"string"},"detail":{"oneOf":[{"type":"string","title":"Detail","uniqueKey":"detail.oneOf.0","typeLabel":"string"},{"type":"null","title":"Detail","uniqueKey":"detail.oneOf.1","typeLabel":"null"}],"uniqueKey":"detail","typeLabel":"string | null"},"instance":{"oneOf":[{"type":"string","title":"Instance","uniqueKey":"instance.oneOf.0","typeLabel":"string"},{"type":"null","title":"Instance","uniqueKey":"instance.oneOf.1","typeLabel":"null"}],"uniqueKey":"instance","typeLabel":"string | null"}},"type":"object","required":["title","status"],"title":"ErrorResponse","description":"RFC 7807 Problem Details response.","uniqueKey":"","typeLabel":"ErrorResponse · object"},"examples":{"Example":{"title":"Example","value":{"title":"\u003cstring>","status":123,"type":"about:blank","detail":"\u003cstring>","instance":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"5b3e9f80-4e6d-4653-a03a-6610055505bf":{"APIKeyHeader":{"type":"apiKey","in":"header","name":"X-API-Key","scopes":[],"schemeName":"APIKeyHeader"}}},"servers":{"5105a447-54cf-43f8-8320-a200b5dbda1d":{"url":"https://api.limitguard.ai"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"X-API-Key","scopes":[],"schemeName":"APIKeyHeader"},"schema":{"title":"X-API-Key","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"APIKeyHeader","name":"X-API-Key"}],"title":"APIKeyHeader"}]},"originalFileLocation":"api-reference/openapi.json"},"subdomain":"limitguard","siteName":"Limitguard","title":"Entity Deep Check - Limitguard","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-21T11:16:39.133Z","originalFileLocation":"api-reference/entity-deep-check.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Deep check: extended PEP/RCA exposure screening, the Dutch insolvency register on every tier, adverse media on the extended tier, an Italian credit report on the credit tier. pep_extended is the source the base check does not return. /v1/entity/check queries the same OpenSanctions collection but filters to sanctions/enforcement datasets and reduces the answer to a boolean (app/services/sanctions.py); the role.pep/role.rca detail is fetched and discarded. This endpoint keeps it. insolvency_records is the Centraal Insolventieregister (NL only; for any other country the field says applicable: false). It is queried by kvk_number when the body carries one (exact), else by entity_name (trade-name search). kvk_register_flags is KVK\u0026#x27;s own register status for a Dutch BV or NV: actief and insolventieCode from KVK\u0026#x27;s Open Dataset Basisbedrijfsgegevens. It is null while KVK_REGISTER_FLAGS_ENABLED is off, for any country other than NL and without kvk_number. not_covered means the dataset has no entry (not a BV or NV). not_available means KVK did not answer. not_applicable means kvk_number is not 8 digits, so no call is made. None of these is a clean answer, and none turns the call into a 503. findings lists the actions these flags give, with exactly one finding when KVK and the insolvency register disagree. credit_report is an Openapi.com credit score, Italy only, available when OPENAPI_CREDIT_API_KEY is configured -- see /health. For any other country, or a supported one with no credit_report_identifier (VAT number, tax code or company ID) in the body, the field says applicable: false rather than being omitted or erroring, the same pattern insolvency_records uses for non-NL, and the credit tier\u0026#x27;s premium is never billed for it (app/middleware/x402.py probes the country before pricing the call). Three tiers, resolved from X-Response-Quality by the x402 middleware: fresh (default; the deep tier, $0.88) returns pep_extended and insolvency_records; enhanced (the extended tier, $1.71) adds adverse_media from dilisense; credit ($2.45, Italy only, available when enabled) adds credit_report instead. There is no cache-only branch, so cached is quoted, charged and served as fresh. If a source of the requested tier cannot be reached the answer is a 503 (pep_source_unavailable, insolvency_source_unavailable, adverse_media_source_unavailable or credit_report_source_unavailable), never a fabricated clean screen, and the x402 gate settles only on a 2xx so the call is not charged.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Limitguard\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/limitguard/KV8oOqcf-pZgR4Qu/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/limitguard/KV8oOqcf-pZgR4Qu/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/limitguard/KV8oOqcf-pZgR4Qu/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/limitguard/KV8oOqcf-pZgR4Qu/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/limitguard/KV8oOqcf-pZgR4Qu/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/limitguard/KV8oOqcf-pZgR4Qu/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/limitguard/KV8oOqcf-pZgR4Qu/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/limitguard/KV8oOqcf-pZgR4Qu/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/limitguard/KV8oOqcf-pZgR4Qu/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Entity Deep Check - Limitguard\">\u003cmeta data-mint-head property=\"og:description\" content=\"Limitguard API docs: check the company behind each lead against the KVK and KBO registers, EU VAT and sanctions lists, and get proceed, review or block with the source, over the HTTP API, MCP or A2A.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Limitguard\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.limitguard.ai/api-reference/entity-deep-check\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://limitguard.mintlify.site/_mintlify/api/og/v2?division=API+Reference\u0026amp;title=Entity+Deep+Check\u0026amp;description=Deep+check%3A+extended+PEP%2FRCA+exposure+screening%2C+the+Dutch+insolvency%0Aregister+on+every+tier%2C+adverse+media+on+the+extended+tier%2C+an%0AItalian+credit+report+on+th\u0026amp;theme=da722dbef8d1720c22f54191\u0026amp;signature=9f8aa13de11c182b8401b38f4184bcce52149c9b28edcebcdc01c39ca340640d\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Entity Deep Check - Limitguard\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Limitguard API docs: check the company behind each lead against the KVK and KBO registers, EU VAT and sanctions lists, and get proceed, review or block with the source, over the HTTP API, MCP or A2A.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://limitguard.mintlify.site/_mintlify/api/og/v2?division=API+Reference\u0026amp;title=Entity+Deep+Check\u0026amp;description=Deep+check%3A+extended+PEP%2FRCA+exposure+screening%2C+the+Dutch+insolvency%0Aregister+on+every+tier%2C+adverse+media+on+the+extended+tier%2C+an%0AItalian+credit+report+on+th\u0026amp;theme=da722dbef8d1720c22f54191\u0026amp;signature=9f8aa13de11c182b8401b38f4184bcce52149c9b28edcebcdc01c39ca340640d\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/limitguard/KV8oOqcf-pZgR4Qu/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Limitguard\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0A6B4A\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.limitguard.ai/api-reference/entity-deep-check\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/entity-deep-check.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.limitguard.ai/#organization\",\"name\":\"Limitguard\",\"url\":\"https://docs.limitguard.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/limitguard/uaqWIf-9wGFL37l0/logo/light.svg?fit=max\u0026auto=format\u0026n=uaqWIf-9wGFL37l0\u0026q=85\u0026s=001e2a6b81bfb747720577c78583c066\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.limitguard.ai#website\",\"name\":\"Limitguard\",\"url\":\"https://docs.limitguard.ai\",\"publisher\":{\"@id\":\"https://docs.limitguard.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.limitguard.ai/api-reference/entity-deep-check#webpage\",\"url\":\"https://docs.limitguard.ai/api-reference/entity-deep-check\",\"name\":\"Entity Deep Check\",\"description\":\"Deep check: extended PEP/RCA exposure screening, the Dutch insolvency register on every tier, adverse media on the extended tier, an Italian credit report on the credit tier. pep_extended is the source the base check does not return. /v1/entity/check queries the same OpenSanctions collection but filters to sanctions/enforcement datasets and reduces the answer to a boolean (app/services/sanctions.py); the role.pep/role.rca detail is fetched and discarded. This endpoint keeps it. insolvency_records is the Centraal Insolventieregister (NL only; for any other country the field says applicable: false). It is queried by kvk_number when the body carries one (exact), else by entity_name (trade-name search). kvk_register_flags is KVK's own register status for a Dutch BV or NV: actief and insolventieCode from KVK's Open Dataset Basisbedrijfsgegevens. It is null while KVK_REGISTER_FLAGS_ENABLED is off, for any country other than NL and without kvk_number. not_covered means the dataset has no entry (not a BV or NV). not_available means KVK did not answer. not_applicable means kvk_number is not 8 digits, so no call is made. None of these is a clean answer, and none turns the call into a 503. findings lists the actions these flags give, with exactly one finding when KVK and the insolvency register disagree. credit_report is an Openapi.com credit score, Italy only, available when OPENAPI_CREDIT_API_KEY is configured -- see /health. For any other country, or a supported one with no credit_report_identifier (VAT number, tax code or company ID) in the body, the field says applicable: false rather than being omitted or erroring, the same pattern insolvency_records uses for non-NL, and the credit tier's premium is never billed for it (app/middleware/x402.py probes the country before pricing the call). Three tiers, resolved from X-Response-Quality by the x402 middleware: fresh (default; the deep tier, $0.88) returns pep_extended and insolvency_records; enhanced (the extended tier, $1.71) adds adverse_media from dilisense; credit ($2.45, Italy only, available when enabled) adds credit_report instead. There is no cache-only branch, so cached is quoted, charged and served as fresh. If a source of the requested tier cannot be reached the answer is a 503 (pep_source_unavailable, insolvency_source_unavailable, adverse_media_source_unavailable or credit_report_source_unavailable), never a fabricated clean screen, and the x402 gate settles only on a 2xx so the call is not charged.\",\"dateModified\":\"2026-10-21T11:16:39.133Z\",\"isPartOf\":{\"@id\":\"https://docs.limitguard.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.limitguard.ai/api-reference/entity-deep-check#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.limitguard.ai/api-reference/entity-deep-check#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Endpoints\",\"item\":\"https://docs.limitguard.ai/api-reference/health-check\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"API Reference\",\"item\":\"https://docs.limitguard.ai/api-reference/health-check\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Entity Deep Check\",\"item\":\"https://docs.limitguard.ai/api-reference/entity-deep-check\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.limitguard.ai/api-reference/entity-deep-check#apireference\",\"headline\":\"Entity Deep Check\",\"name\":\"Entity Deep Check\",\"description\":\"Deep check: extended PEP/RCA exposure screening, the Dutch insolvency register on every tier, adverse media on the extended tier, an Italian credit report on the credit tier. pep_extended is the source the base check does not return. /v1/entity/check queries the same OpenSanctions collection but filters to sanctions/enforcement datasets and reduces the answer to a boolean (app/services/sanctions.py); the role.pep/role.rca detail is fetched and discarded. This endpoint keeps it. insolvency_records is the Centraal Insolventieregister (NL only; for any other country the field says applicable: false). It is queried by kvk_number when the body carries one (exact), else by entity_name (trade-name search). kvk_register_flags is KVK's own register status for a Dutch BV or NV: actief and insolventieCode from KVK's Open Dataset Basisbedrijfsgegevens. It is null while KVK_REGISTER_FLAGS_ENABLED is off, for any country other than NL and without kvk_number. not_covered means the dataset has no entry (not a BV or NV). not_available means KVK did not answer. not_applicable means kvk_number is not 8 digits, so no call is made. None of these is a clean answer, and none turns the call into a 503. findings lists the actions these flags give, with exactly one finding when KVK and the insolvency register disagree. credit_report is an Openapi.com credit score, Italy only, available when OPENAPI_CREDIT_API_KEY is configured -- see /health. For any other country, or a supported one with no credit_report_identifier (VAT number, tax code or company ID) in the body, the field says applicable: false rather than being omitted or erroring, the same pattern insolvency_records uses for non-NL, and the credit tier's premium is never billed for it (app/middleware/x402.py probes the country before pricing the call). Three tiers, resolved from X-Response-Quality by the x402 middleware: fresh (default; the deep tier, $0.88) returns pep_extended and insolvency_records; enhanced (the extended tier, $1.71) adds adverse_media from dilisense; credit ($2.45, Italy only, available when enabled) adds credit_report instead. There is no cache-only branch, so cached is quoted, charged and served as fresh. If a source of the requested tier cannot be reached the answer is a 503 (pep_source_unavailable, insolvency_source_unavailable, adverse_media_source_unavailable or credit_report_source_unavailable), never a fabricated clean screen, and the x402 gate settles only on a 2xx so the call is not charged.\",\"url\":\"https://docs.limitguard.ai/api-reference/entity-deep-check\",\"mainEntityOfPage\":{\"@id\":\"https://docs.limitguard.ai/api-reference/entity-deep-check#webpage\"},\"dateModified\":\"2026-10-21T11:16:39.133Z\",\"publisher\":{\"@id\":\"https://docs.limitguard.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.limitguard.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Limitguard\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Limitguard","nav":{"global":null,"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/introduction"}]},{"tab":"API Reference","groups":[{"group":"Overview","pages":[{"title":"API Reference","sidebarTitle":"Overview","href":"/api-reference/introduction"}]},{"group":"Endpoints","pages":[{"group":"API Reference","pages":[{"title":"Health Check","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /health","href":"/api-reference/health-check"},{"title":"Entity Check","description":"Full entity trust check.\n\nAlways runs country risk and sanctions; runs each other data source\nwhose identifier is provided (up to 8 total), computes a trust score,\nassigns a cluster, and returns a recommendation.\n\n`entity_name` and `country` are required; identifiers (kvk_number,\ncbe_number, domain, iban, vat_number, wallet_address) are optional and\nraise confidence. With none, only country risk and sanctions run (plus a\nKVK name search for NL), at lower confidence.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/entity/check","href":"/api-reference/entity-check"},{"title":"Entity Deep Check","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/entity/deep-check","href":"/api-reference/entity-deep-check"},{"title":"Risk Score","description":"Quick risk assessment using country risk + sanctions only.\n\nFaster than /entity/check (2 sources vs up to 8). Returns risk_score\nwhere 0 = lowest risk, 100 = highest risk.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/risk/score","href":"/api-reference/risk-score"},{"title":"Create Key","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/keys/create","href":"/api-reference/create-key"},{"title":"Get Usage","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/keys/usage","href":"/api-reference/get-usage"},{"title":"Revoke Key","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/keys/revoke","href":"/api-reference/revoke-key"},{"title":"Upgrade Key","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/keys/upgrade/{tier}","href":"/api-reference/upgrade-key"},{"title":"Topup Key","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/keys/topup/{usd}","href":"/api-reference/topup-key"},{"title":"Get Usage Summary","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/usage/summary","href":"/api-reference/get-usage-summary"},{"title":"Get Endpoint Counts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/usage/endpoints","href":"/api-reference/get-endpoint-counts"},{"title":"Get Customer Usage","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/usage","href":"/api-reference/get-customer-usage"},{"title":"Get Audit Trail","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/audit/trail","href":"/api-reference/get-audit-trail"},{"title":"Verify Audit Chain","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/audit/verify","href":"/api-reference/verify-audit-chain"},{"title":"Query Audit Trail","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/audit/query","href":"/api-reference/query-audit-trail"},{"title":"Query Sanctions Decisions","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/audit/sanctions","href":"/api-reference/query-sanctions-decisions"},{"title":"List Webhooks","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/webhooks","href":"/api-reference/list-webhooks"},{"title":"Register Webhook","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/webhooks","href":"/api-reference/register-webhook"},{"title":"Delete Webhook","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/webhooks/{webhook_id}","href":"/api-reference/delete-webhook"},{"title":"Test Webhook","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/webhooks/{webhook_id}/test","href":"/api-reference/test-webhook"},{"title":"Purge Entity Data","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/data/purge","href":"/api-reference/purge-entity-data"},{"title":"Get Retention Policies","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/data/retention","href":"/api-reference/get-retention-policies"},{"title":"Badge JSON (withdrawn)","deprecated":true,"version":null,"openapi":"/api-reference/openapi.json get /v1/badge/{entity_id}.json","href":"/api-reference/badge-json-withdrawn"},{"title":"Badge SVG (withdrawn)","deprecated":true,"version":null,"openapi":"/api-reference/openapi.json get /v1/badge/{entity_id}","href":"/api-reference/badge-svg-withdrawn"},{"title":"Verification page data (withdrawn)","deprecated":true,"version":null,"openapi":"/api-reference/openapi.json get /v1/verify/{entity_id}","href":"/api-reference/verification-page-data-withdrawn"},{"title":"Self Verify","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/self-verify","href":"/api-reference/self-verify"},{"title":"Get Methodology","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/methodology","href":"/api-reference/get-methodology"},{"title":"Get Signals","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/self-verify/signals","href":"/api-reference/get-signals"},{"title":"Verify Certificate","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/certificate/{certificate_hash}","href":"/api-reference/verify-certificate"},{"title":"Register Provider","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/providers/register","href":"/api-reference/register-provider"},{"title":"List Providers","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/providers","href":"/api-reference/list-providers"},{"title":"Get Provider","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/providers/{provider_id}","href":"/api-reference/get-provider"},{"title":"Get Privacy Policy","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/legal/privacy","href":"/api-reference/get-privacy-policy"},{"title":"Get Terms Of Service","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/legal/terms","href":"/api-reference/get-terms-of-service"},{"title":"Get DPA","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/legal/dpa","href":"/api-reference/get-dpa"},{"title":"List Legal Documents","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/legal","href":"/api-reference/list-legal-documents"},{"title":"Get Score History","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/scores/{subject}/history","href":"/api-reference/get-score-history"},{"title":"Submit Feedback","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/feedback","href":"/api-reference/submit-feedback"},{"title":"Reputation Score","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/reputation/score","href":"/api-reference/reputation-score"},{"title":"Reputation History","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/reputation/history/{entity_hash}","href":"/api-reference/reputation-history"},{"title":"List Watchlist","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/watchlist","href":"/api-reference/list-watchlist"},{"title":"Add To Watchlist","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/watchlist","href":"/api-reference/add-to-watchlist"},{"title":"Remove From Watchlist","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/watchlist/{entity_id}","href":"/api-reference/remove-from-watchlist"},{"title":"Financial Health","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/financial/health","href":"/api-reference/financial-health"},{"title":"Treasury Settlements","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/treasury/settlements","href":"/api-reference/treasury-settlements"},{"title":"Agent Revenue","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/treasury/revenue/{agent_id}","href":"/api-reference/agent-revenue"},{"title":"Wallet Balance","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/wallet/balance","href":"/api-reference/wallet-balance"},{"title":"List Alerts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/compliance/alerts","href":"/api-reference/list-alerts"},{"title":"List Sources","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/compliance/sources","href":"/api-reference/list-sources"},{"title":"Create Subscription","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/compliance/subscribe","href":"/api-reference/create-subscription"},{"title":"AI Act Readiness","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/compliance/readiness/{entity_id}","href":"/api-reference/ai-act-readiness"},{"title":"Compliance Report","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/compliance/report/{entity_id}","href":"/api-reference/compliance-report"},{"title":"Quickstart Guide","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/quickstart","href":"/api-reference/quickstart-guide"},{"title":"KYB Check","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/kyb/check","href":"/api-reference/kyb-check"},{"title":"Security TXT","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /.well-known/security.txt","href":"/api-reference/security-txt"}]},{"group":"reports","pages":[{"title":"Create Entity Report","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/reports/entity","href":"/api-reference/reports/create-entity-report"},{"title":"Get Entity Report","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/reports/{report_id}","href":"/api-reference/reports/get-entity-report"}]},{"group":"sanctions","pages":[{"title":"Sanctions Preview","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/sanctions/preview","href":"/api-reference/sanctions/sanctions-preview"},{"title":"Sanctions Screen Route","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/sanctions/screen","href":"/api-reference/sanctions/sanctions-screen-route"},{"title":"Sanctions Wallet","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/sanctions/wallet","href":"/api-reference/sanctions/sanctions-wallet"}]},{"group":"agent","pages":[{"title":"Agent Check","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/agent/check","href":"/api-reference/agent/agent-check"}]},{"group":"leads","pages":[{"title":"Lead Verify","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/leads/verify","href":"/api-reference/leads/lead-verify"}]},{"group":"Sales","pages":[{"title":"Get Marketplace Listing","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/sales/listing","href":"/api-reference/sales/get-marketplace-listing"},{"title":"Get Recommendations","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/sales/recommendations","href":"/api-reference/sales/get-recommendations"}]},{"group":"mcp","pages":[{"title":"MCP Check Entity","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/mcp/check-entity","href":"/api-reference/mcp/mcp-check-entity"},{"title":"MCP Check Agent (not implemented)","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/mcp/check-agent","href":"/api-reference/mcp/mcp-check-agent-not-implemented"},{"title":"MCP Trust Score","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/mcp/trust-score","href":"/api-reference/mcp/mcp-trust-score"},{"title":"MCP Verify Wallet","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/mcp/verify-wallet","href":"/api-reference/mcp/mcp-verify-wallet"},{"title":"MCP Risk Score","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/mcp/risk-score","href":"/api-reference/mcp/mcp-risk-score"}]},{"group":"x402","pages":[{"title":"Get Supported","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /x402/supported","href":"/api-reference/x402/get-supported"},{"title":"Verify Payment","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /x402/verify","href":"/api-reference/x402/verify-payment"},{"title":"Settle Payment","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /x402/settle","href":"/api-reference/x402/settle-payment"}]}]}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog/2026-10-12"}]}]},"basePath":"","title":"Entity Deep Check - Limitguard","buildId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","deploymentId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CBsVopKK.js","utils-DZAk68jJ.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-D32AYZrP.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-D_A5_cny.js","snippetPresets-xNRfS9th.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-BIB25-tq.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CydJ4w4j.js","shallow-CYPBeQSG.js","getApiPlaygroundDisplay-A5xJVBOu.js","CodeSnippet-BVRTgi3m.js","CodeSnippets-DjD6BSlt.js","Page-Dr40SSJq.js","getPastedJson-D4V4JyrR.js","icon-uhcnG22T.js","MethodPill-CM-ZQdGH.js","DuplicateIcon-B_WnOiNf.js","createIcon-CJsb8utt.js","DynamicMarkdown-D-2HDKEp.js","SectionHeading-KP5xmMgQ.js","axios-vUo_bRtp.js","Markdown-D_k0dg6k.js","clsx-DK3K4Z1S.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-DE3EVdvd.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-fN9H9n9g.js"]}