Case File¶
A case is created with each root company search. It groups related work (root search, expand layers, LEI lookups) and holds the live entity graph (target + nested counterparties).
Warning
Storage contract (important for integrators)
| Resource | What you get |
|---|---|
GET /casefile/{caseId} |
Case metadata + search summaries (no nested result) + entity graph on target |
GET /search/{searchId}/status |
Full search document, including result when completed |
Do not expect full search result blobs inside case.searches[].
Get case file¶
Request¶
Headers
| Header | Value |
|---|---|
X-API-Key or Authorization |
API key or Bearer token |
Path parameters
| Parameter | Type | Description |
|---|---|---|
caseId |
string | Case ID returned from POST /search |
Response¶
{
"_id": "xyz789caseId",
"createdAt": "2026-01-15T10:30:00.000Z",
"updatedAt": "2026-01-15T10:40:00.000Z",
"userId": "user-uid",
"target": {
"_id": "entity-uuid",
"legalName": "EXAMPLE LTD",
"companyStatus": "Active",
"countryOfRegistration": "GB",
"jurisdiction": "GB",
"addresses": [],
"identifiers": [],
"relationships": [],
"counterparties": [],
"sourceDocuments": []
},
"searches": [
{
"_id": "abc123searchId",
"caseId": "xyz789caseId",
"userId": "user-uid",
"createdAt": "2026-01-15T10:30:00.000Z",
"updatedAt": "2026-01-15T10:30:05.000Z",
"status": "COMPLETED",
"searchInputs": {
"identifier": "09215191",
"jurisdiction": "GB"
}
},
{
"_id": "expand-search-id",
"caseId": "xyz789caseId",
"userId": "user-uid",
"createdAt": "2026-01-15T10:35:00.000Z",
"updatedAt": "2026-01-15T10:35:20.000Z",
"status": "COMPLETED",
"searchType": "expand",
"parentEntityId": "counterparty-uuid",
"searchInputs": {
"identifier": "HRB 12345",
"jurisdiction": "DE"
}
}
]
}
| Field | Type | Description |
|---|---|---|
_id |
string | Case ID |
createdAt / updatedAt |
string | ISO 8601 timestamps |
userId |
string | Case owner |
target |
Entity | Root company graph (present after a successful root search) |
searches |
SearchSummary[] | Lightweight history of searches on this case |
Search summary fields
| Field | Type | Description |
|---|---|---|
_id |
string | Search ID |
caseId |
string | Parent case |
userId |
string | Owner |
status |
string | PENDING, COMPLETED, FAILED, or EMPTY |
searchInputs |
object | Original parameters |
searchType |
string | Present for non-root searches: expand, lei |
parentEntityId |
string | Expand only: entity that was expanded |
pendingDocument |
boolean | Optional flag (e.g. SG async fulfilment still generating) |
createdAt / updatedAt |
string | ISO 8601 timestamps |
Example (cURL)¶
Reading ownership structure¶
- Root company:
target - Officers / shareholders / related parties:
target.counterparties[], linked viarelationships[]._parentId - Expand layers: after
POST /search/expand, new counterparties hang under the expanded entity’s id - Proof files:
sourceDocuments[]._documentID→ Document Retrieval
For the full payload of a specific search (including expand result and failure details), call GET /search/{searchId}/status.