OWNERSHIP · PEOPLE, HOLDINGS & RELATIONSHIPS
Understand the holding and the corporate hierarchy.
CompanyProof returns shareholder records and group relationships as separate modules inside the company profile.
Use profile.shareholders for returned holdings and profile.group_structures_full for corporate relationships. Shareholder records and group links do not themselves constitute a calculated UBO result.
Example Holdings Ltd
- Shareholder
- Example Parent Ltd
- Quantity
- 7,500
- Share class
- ORDINARY
- Reported percentage
- Not supplied
Share quantity alone is insufficient to calculate ownership without the total issued shares and relevant share classes.
Each children[] array repeats the company-node shape. Keep the module’s source category with the relationships.
Exact CompanyProof ownership attributes
| Attribute path | Type | Presence | Details |
|---|---|---|---|
id | integer | string | null | Optional | Returned field; availability depends on the record. |
name | string | null | Optional | Returned field; availability depends on the record. |
currency | string | null | Optional | Returned field; availability depends on the record. |
percentage | number | string | null | Optional | Returned field; availability depends on the record. |
quantity | number | string | null | Optional | Returned field; availability depends on the record. |
share_price | number | string | null | Optional | Returned field; availability depends on the record. |
share_type | string | null | Optional | Returned field; availability depends on the record. |
share_value | number | string | null | Optional | Returned field; availability depends on the record. |
status | string | null | Optional | Returned field; availability depends on the record. |
total_value | number | string | null | Optional | Returned field; availability depends on the record. |
source | object | null | Optional | Expand using the nested attributes listed below. |
source.categoryProfileSource | string | null | Optional | Source class, such as Government Registry, Enriched or Modelled. |
source.commentProfileSource | string | null | Optional | Returned field; availability depends on the record. |
source.idProfileSource | integer | string | null | Optional | Provider source identifier. Upstream records can encode identifiers as integers or strings. |
source.nameProfileSource | string | null | Optional | Returned field; availability depends on the record. |
source.urlProfileSource | string | null | Optional | Source URL when it can be disclosed; otherwise null. Format: uri. |
source.retrieved_atProfileSource | string | null | Optional | Format: date-time. |
Paths are relative to the selected schema; $ means the schema value itself. Required applies when its parent object exists. null, an absent field and an empty list are different values. Alternative response shapes are labelled.
Standalone ownership API reference
Global Database direct API The linked ownership API uses GET /v2/ownership/{id}. This route is not exposed by CompanyProof. The following paths and example types describe that separate response.
| Attribute path | Type evidence | Meaning |
|---|---|---|
shareholders[] | array | Shareholder records returned by the direct ownership endpoint. |
shareholders[].id | number in example | Shareholder record identifier. |
shareholders[].name | string in example | Shareholder’s returned name. |
shareholders[].quantity | number in example | Number of shares. |
shareholders[].currency | string in example | Currency of the holding. |
shareholders[].share_value | string in example | Source description of the holding and share value. |
shareholders[].created_at | date-time string in example | Timestamp on the shareholder record; not necessarily an acquisition date. |
shareholders[].share_type | string in example | Share class. |
shareholders[].share_price | number in example | Price per share. |
data | array; item schema unspecified | The published example contains an empty array; no item contract is given. |
group_structure[] | array | Top-level group nodes. |
group_structure[].id | number in example | Company node identifier. |
group_structure[].registration_number | string in example | Company registration number. |
group_structure[].selected | boolean in example | Marks the company selected for the query. |
group_structure[].name | string in example | Company node name. |
group_structure[].children[] | recursive node array | Child nodes use the same id, name, registration_number, selected and children fields. |
registration_number | string in example | Registration number of the queried company. |
The direct ownership reference supplies an example, rather than a complete typed schema. Requiredness and nullability are not specified. Its created_at field is not part of CompanyProof’s documented shareholder schema.
