Get company directors with their other appointments
Get all directors for a company, split into current and past, with their other board appointments.
For each director, the response includes every other company they sit on (or have sat on), enabling you to map connections between companies through shared board members.
- current_directors - officers with no resignation date, including secretaries (never filtered - a secretary is a real officer that KYB checks need to see)
- past_directors - officers who have resigned
- other_appointments - every other company each director is or was appointed to
Each director carries ECCTA identity verification state: verification_status (verified | pending | overdue | unknown | not_applicable), verification_deadline (this person's own CH-authoritative deadline, only set when pending or overdue), and is_board_director (true for every officer except secretaries - a corporate-director IS a board director even though it cannot personally verify an identity, so verification_status is not_applicable for it while is_board_director stays true). pending means a deadline has been recorded but has NOT passed - nothing has been missed. Top-level counts (directors_verified, directors_pending, directors_overdue, directors_unknown, directors_verification_required) exclude officers ECCTA does not apply to (corporate officers and secretaries), so they can be smaller than total_current.
Data is cached for 30 days. If the Companies House API is down, stale cached data is returned with cached: true in the response.
Example: /v1/company/00445790/directors returns all Tesco PLC directors.
Upstream usage: This endpoint is upstream-intensive on first fetch. It makes 1 call per director (to retrieve their appointment history), plus 1–2 calls for the officer list itself. A company with 10 directors uses ~12 upstream calls; a company with 50 directors uses ~52. After the first fetch, the result is cached for 30 days and subsequent calls are free.
At high volume, querying more than ~8 different companies per minute on cold cache will cause responses to slow while upstream capacity recovers (typically 5–15 seconds). For bulk use cases, space requests out or pre-warm the cache during off-peak hours.
Request
- Base URL: https://api.registrum.co.uk
- URL: https://api.registrum.co.uk/v1/company/{company_number}/directors
- Auth: API key in header X-API-Key
Path parameters
The Companies House company number. 8 alphanumeric characters (e.g., 00445790 for Tesco PLC). Numeric-only numbers are automatically zero-padded.
Response
Directors list returned successfully, split into current and past
Example response
{
"cache_age_seconds": 3421,
"cached": true,
"credits_remaining": 487,
"credits_used": 1,
"data": {
"company_age_years": 78,
"company_name": "TESCO PLC",
"company_number": "00445790",
"company_status": "active",
"company_type": "plc"
},
"data_source": "cached",
"status": "success"
}Changes
No recorded changes to this operation across all 1 revision of this API.