---
title: "Build a compliance report on an entity"
method: POST
path: "/v1/reports/entity"
---

# Build a compliance report on an entity

`POST /v1/reports/entity`

## Request

- Base URL: `https://api.limitguard.ai`
- URL: `https://api.limitguard.ai/v1/reports/entity`
- Auth: one of:
  - API key in header `X-API-Key`
  - none

Per-entity report built from one real check's signals: identity, sanctions and PEP screening, domain signals, trust score (risk.trust_score, 0-100, 100 = best), correlations with the caller's earlier reports, sources and an evidence hash. A source that did not answer is shown unavailable, never clean.

## Request body

- object
  - `check_id` string: Id of a check stored by an earlier /v1/reports/entity call
  - `entity_name` string: Legal entity name
  - `country` string: ISO 3166-1 alpha-2 country code
  - `kvk_number` string: Dutch KVK number (8 digits)
  - `cbe_number` string: Belgian CBE number (0XXX.XXX.XXX or 10 digits)
  - `vat_number` string: EU VAT number
  - `domain` string: Entity website domain
  - `iban` string: IBAN for financial validation
  - `wallet_address` string: Crypto wallet address (format check only; no on-chain lookup)
  - `wallet_chain` string: Blockchain the address is checked against

## Response `200`

Success

## Other responses

- `402`: Payment required. The x402 v2 challenge is in the base64 PAYMENT-REQUIRED header and the JSON body; pay and retry with PAYMENT-SIGNATURE, or send X-API-Key with prepaid balance.

---

[API](https://skmtc.dev/limitguard/apis/limitguard-ai.md) · [All operations](https://skmtc.dev/limitguard/apis/limitguard-ai/llms.txt) · [OpenAPI document](https://skmtc.dev/limitguard/apis/limitguard-ai/revisions/8f9718bce4a1?raw)
