Export Compliance
Ownership Screening (OFAC 50% / BIS Affiliates Rule)
POST
/v1/compliance/ownership-screening$0.05 per callAggregates effective ownership through the structure you supply and screens every owner against the Consolidated Screening List. Reports the OFAC 50 Percent Rule (SDN owners) and the BIS Affiliates Rule (Entity List / MEU owners, with its current effective date). Ownership data is supplied by the caller.
Send an Idempotency-Key header to retry safely.
Request body
| Field | Type | Description |
|---|---|---|
| entityrequired | object | |
| entity.namerequired | string | |
| entity.countryoptional | string | max length 3 |
| ownersrequired | array of object | Ownership structure supplied by you (at most 50 owners in total, 5 levels deep). ComplianceGrid does not source beneficial ownership data. min 1 items · max 50 items |
| owners[].namerequired | string | |
| owners[].countryoptional | string | max length 3 |
| owners[].ownershipPercentrequired | number | Direct ownership of the parent node min 0 · max 100 |
| owners[].ownersoptional | array of object | max 50 items |
| owners[].owners[].namerequired | string | |
| owners[].owners[].countryoptional | string | max length 3 |
| owners[].owners[].ownershipPercentrequired | number | Direct ownership of the parent node min 0 · max 100 |
| owners[].owners[].ownersoptional | array of object | max 50 items |
| owners[].owners[].owners[].namerequired | string | |
| owners[].owners[].owners[].countryoptional | string | max length 3 |
| owners[].owners[].owners[].ownershipPercentrequired | number | Direct ownership of the parent node min 0 · max 100 |
| owners[].owners[].owners[].ownersoptional | array of object | max 50 items |
Response fields
| Field | Type | Description |
|---|---|---|
| success | boolean | |
| data | object | |
| meta | object | |
| meta.dataSource | object | |
| meta.dataSource.name | string | Name of the source that produced this response |
| meta.dataSource.provenance | string | live = fetched from the upstream source for this request; database = synced copy; curated = small hand-maintained dataset (absence of a hit is not a clean result); computed = produced by ComplianceGrid rules; seed = development placeholder data; mock = sandbox canned response |
| meta.dataSource.note | string |
Fields are read from a real response captured 2026-11-04, shortened. Optional fields may be absent in other responses.
Errors
- 400 invalid request
- 401 missing or bad key
- 403 not in your plan
- 429 rate limited, see Retry-After
- 402 payment required
- 5xx retry with backoff
Error bodies and codes are described in Error codes and troubleshooting.