---
title: "Persons of significant control"
method: GET
path: "/psc/company/{number}"
tags: ["PSC"]
---

# Persons of significant control

`GET /psc/company/{number}`

## Request

- Base URL: `https://api.companystack.co.uk`
- URL: `https://api.companystack.co.uk/psc/company/{number}`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-Api-Key`

Every person with significant control on the company's register, current and ceased, newest first: name, kind (individual, corporate entity or legal person), nationality, country of residence, natures of control and the dates notified and ceased. `statements` counts the PSC statements the company has filed; their wording is at `GET /psc/company/{number}/statements`.

## Path parameters

- `number` string, required

## Response `200`

PSC records

- PscList: People and bodies with significant control. total, active and items count and list them only: a PSC statement is not a person, and is counted in statements (its wording is at /psc/company/{number}/statements).
  - `company_number` string, required
  - `total` integer
  - `active` integer
  - `statements` object: PSC statement records held for the company: current (not withdrawn) and ceased
    - `current` integer
    - `ceased` integer
    - `note` string
  - `items` PersonWithSignificantControl[], required
    - `name` string
    - `kind` string, nullable: e.g. individual-person-with-significant-control, corporate-entity-person-with-significant-control
    - `nationality` string, nullable
    - `country_of_residence` string, nullable
    - `natures_of_control` string[], nullable: e.g. ownership-of-shares-75-to-100-percent
    - `notified_on` string, date, nullable
    - `ceased_on` string, date, nullable
    - `address` Address
      - `line1` string, nullable
      - `line2` string, nullable
      - `locality` string, nullable
      - `region` string, nullable
      - `postal_code` string, nullable
      - `country` string, nullable

## Other responses

- `401`: API key missing, malformed or revoked
- `403`: The key's plan does not include this endpoint (`code: plan_upgrade_required`, with `upgrade_url`), the key may not call it, or the key is beyond the plan's key limit after a downgrade (`code: key_limit_exceeded`: the newest keys are paused until keys are deleted or the plan upgraded)
- `429`: Per-minute or per-day limit reached (`code: rate_limited`, `window: minute|day`). Wait `Retry-After` seconds; when both windows are full the day is reported. A refused request does not count against either limit. A bulk lookup (`POST /company/bulk`) counts each company number in it as one request, so one that is more than you have left is refused whole, and the body adds `requested` and `fits`.

---

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