---
title: "Get historical owner changes"
method: GET
path: "/v1/company/{company_id}/owners/historical"
tags: ["v1"]
---

# Get historical owner changes

`GET /v1/company/{company_id}/owners/historical`

## Path parameters

- `company_id` string, required

## Response `200`

Successfully retrieved historical owner changes

- HistoricalOwnersResponse
  - `owners` OwnerHistory[], required
    - `id` string, required — Unique identifier for the owner. For companies, this is the company register ID (e.g. DE-HRB-F1103-267645) which can be used to look up the company. For natural persons, this is the entity UUID. For other entity types (foreign companies, foundations, etc.), this is empty.
    - `name` string, required — Name of the owner
    - `entity_type` 'natural_person' | 'german_company' | 'foreign_company' | 'german_government_entity' | 'german_foundation' | 'german_multiple_shareholder', required — Type of the owner entity
    - `country` string — Country of the owner
    - `ownership_history` OwnershipEntry[], required — Historical ownership data across all documents
      - `document_id` string, uuid, required — Document where this ownership data was found
      - `document_date` string, date-time, required — Date of the document
      - `nominal_shares` integer, required — Nominal value of shares in this document
      - `percentage_shares` number, double, required — Percentage ownership in this document
    - `first_appearance` string, date-time, required — Date when this owner first appeared
    - `last_appearance` string, date-time — Date when this owner last appeared (null if still active)
    - `status` 'active' | 'removed', required — Current status of the owner

## Other responses

- `202` — Accepted - Historical owners are being processed, retry this request shortly
- `400` — Bad Request - Invalid parameters provided
- `401` — Unauthorized - Authentication required
- `402` — Payment Required - Insufficient credits for this request
- `404` — Not Found - Company ID doesn't exist or has no owner history
- `429` — Too Many Requests - Rate limit exceeded
- `500` — Internal Server Error - An error occurred while processing the request

---

[API](https://skmtc.net/openregister/apis/openregister-api.md) · [All operations](https://skmtc.net/openregister/apis/openregister-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/openregister/openregister-api/revisions/1d5abbf21b60/schema)
