Groupstructure

Overview

The Group Structure endpoint returns the corporate group hierarchy for a specific company. The response includes:

  • All companies in the group (nodes)
  • Parent–child links between companies (edges) with ownership stakes
  • The ultimate parent company's Valu8 ID

Use this endpoint to visualize or analyze corporate ownership trees, subsidiary structures, and group membership.


Authentication

All requests require authentication. Include your access token in the Authorization header:

Authorization: Bearer <access-token>

If authentication fails, the endpoint returns HTTP 401 Unauthorized.


Request

Path Parameters

ParameterTypeRequiredDescription
valu8Idinteger✅ YesThe Valu8 ID of the company whose group structure you want to retrieve. Must be a positive integer.

Example request:

GET /v2/companies/5579011/group-structure
Authorization: Bearer <access-token>

No request body is required.


Response

Success Response (HTTP 200)

Returns a GetCompanyStructureResponse JSON body containing the full group structure graph.

Not Found Response (HTTP 404)

Returned with an empty body when:

  • The valu8Id is invalid (zero or negative).
  • No group structure exists for the company.
  • The company has no ultimate parent or no structure links.

Unauthorized Response (HTTP 401)

Returned with an empty body when authentication fails.


Response Body:

FieldTypeDescription
CompanyStructureGroupStructureThe group structure graph. See Section 6.

Example response:

{
  "CompanyStructure": {
    "UltimateParentValu8Id": 5579000,
    "Companies": [
      {
        "Valu8Id": 5579000,
        "CompanyName": "Parent Holding AB",
        "OrgNo": "556000-0001",
        "CountryCode": "SE",
        "CompanyType": 1,
        "HasIdentifier": true
      },
      {
        "Valu8Id": 5579011,
        "CompanyName": "Subsidiary AB",
        "OrgNo": "556000-1234",
        "CountryCode": "SE",
        "CompanyType": 5,
        "HasIdentifier": true
      }
    ],
    "Relations": [
      {
        "ParentValu8Id": 5579000,
        "ChildValu8Id": 5579011,
        "OwnershipStake": 100.0,
        "MinOwnershipStake": null,
        "MaxOwnershipStake": null
      }
    ]
  }
}

GroupStructure Object

FieldTypeDescription
UltimateParentValu8IdintegerValu8 ID of the ultimate parent company at the top of the group hierarchy.
CompaniesGroupStructureCompany[]All companies that are part of the group structure. See Section 7.
RelationsGroupStructureRelation[]Parent–child links defining the hierarchy. See Section 8.

How to use the graph:

  1. Find the ultimate parent via UltimateParentValu8Id.
  2. Build the tree by matching ParentValu8IdChildValu8Id in the Relations array.
  3. Look up company details in the Companies array by Valu8Id.

When duplicate links exist for the same parent–child pair, the most recently updated link is returned.


GroupStructureCompany Object

Each company node in the group structure.

FieldTypeDescription
Valu8IdintegerUnique Valu8 identifier.
CompanyNamestringRegistered company name.
OrgNostringOrganisation/registration number.
CountryCodestringTwo-letter ISO country code.
CompanyTypeintegerCompany role in the group hierarchy. See _v2_companies.md – CompanyType.
HasIdentifierbooleantrue if the company has a valid registration identifier.

GroupStructureRelation Object

Each edge in the group structure graph, representing a parent–child ownership link.

FieldTypeConditionDescription
ParentValu8IdintegerAlwaysValu8 ID of the parent (owning) company.
ChildValu8IdintegerAlwaysValu8 ID of the child (owned) company.
OwnershipStakedoubleOmitted when nullOwnership percentage held by the parent.
MinOwnershipStakedoubleOmitted when nullMinimum ownership percentage (when reported as a range).
MaxOwnershipStakedoubleOmitted when nullMaximum ownership percentage (when reported as a range).