---
title: "Beobachtete Personen- und Organangaben einer Rechtseinheit"
method: GET
path: "/companies/{uid}/officers"
tags: ["Firmen"]
---

# Beobachtete Personen- und Organangaben einer Rechtseinheit

`GET /companies/{uid}/officers`

## Request

- Base URL: `https://firmenwatch.ch/api/v1`
- URL: `https://firmenwatch.ch/api/v1/companies/{uid}/officers`
- Auth: HTTP bearer

Teilbestand aus den seit 2025-01-03 erfassten SHAB-Meldungen. Standardmässig werden Angaben ohne beobachteten Austritt geliefert; Angaben mit beobachtetem Austritt nur mit include_former=true. Ein leeres Ergebnis ist keine Aussage, dass keine Personen oder Zeichnungsberechtigungen im Handelsregister eingetragen sind.

## Path parameters

- `uid` string, required

## Query parameters

- `include_former` boolean
- `active` boolean

## Response `200`

Personen- und Organangaben mit ausdruecklicher Reichweite des Teilbestands.

- object
  - `data` Officer[], required
    - `name` string, required
    - `kind` 'person' | 'legal_entity', required
    - `first_name` string, nullable, required
    - `last_name` string, nullable, required
    - `place_of_origin` string, nullable, required: Amtlich publizierter Heimatort.
    - `function` string, nullable, required
    - `role` string, nullable, required: Normalisierte Rolle.
    - `signature` string, nullable, required
    - `shares` string, nullable, required: Amtlich publizierter Beteiligungswortlaut, ohne daraus eine Beteiligungsquote abzuleiten.
    - `observation_status` 'no_removal_observed' | 'removal_observed', required: Beobachtungsstatus im erfassten SHAB-Verlauf; keine Aussage ueber einen vollstaendigen aktuellen Registerstand.
    - `active` boolean, required: Legacy-Feld. true bedeutet nur, dass im erfassten SHAB-Verlauf kein Austritt beobachtet wurde; es bestaetigt weder eine aktuelle Eintragung noch eine vollstaendige Zeichnungsberechtigung.
    - `from` string, date, nullable, required: Beobachtetes Publikationsdatum des Eintritts, sofern erfasst.
    - `to` string, date, nullable, required: Beobachtetes Publikationsdatum des Austritts; null bedeutet nur, dass kein Austritt erfasst wurde.
  - `uid` string, required
  - `officer_data_scope` OfficerDataScope, required: Reichweite der Personen- und Organangaben. Sie beschreibt einen Teilbestand und ist kein Vollstaendigkeitsattest fuer die Rechtseinheit.
    - `basis` 'captured_shab_history', required
    - `coverage` 'none' | 'partial' | 'complete', required
    - `verified_complete` boolean, required: Nur true, wenn ein vollstaendiger Ausgangsbestand und die Fortschreibung bis observed_through belegt sind.
    - `basis_publication_id` string, nullable, required: Belegpublikation der vollstaendigen Ausgangsliste, sonst null.
    - `basis_date` string, date, nullable, required
    - `observed_from` string, date, nullable, required
    - `observed_through` string, date, nullable, required
    - `state_updated_at` string, date-time, nullable, required
    - `result_interpretation` 'observed_entries' | 'no_entries' | 'data_being_completed', required
    - `description` string, required
    - `empty_result_means` string, nullable, required
    - `official_register_url` 'https://www.zefix.admin.ch', uri, required

## Other responses

- `400`: Ungueltige Anfrage (invalid_request).
- `401`: Kein oder ungueltiger Schluessel (unauthorized).
- `402`: Monatskontingent erschoepft (quota_exceeded).
- `403`: Abonnement nicht aktiv oder benoetigtes Schluesselrecht fehlt (forbidden).
- `404`: Keine Rechtseinheit mit dieser UID (not_found).
- `429`: Ratenbegrenzung erreicht (rate_limited).
- `500`: Unerwarteter Fehler (internal).
- `503`: Der Registerbestand wird gerade vollständig verifiziert (temporarily_unavailable). Dieselbe Abfrage später erneut senden.

---

[API](https://skmtc.dev/firmenwatch/apis/firmenwatch-api.md) · [All operations](https://skmtc.dev/firmenwatch/apis/firmenwatch-api/llms.txt) · [OpenAPI document](https://skmtc.dev/firmenwatch/apis/firmenwatch-api/revisions/65e774135677?raw)
