Directors and officers

Directors and officers with roles and appointment dates, taken from the register.

  • $0.01 per verified company
  • No contract
  • Straight from the register

69 jurisdictions covered across official registers

Sample regions: United Kingdom, France, Germany, Sweden, Belgium, Brazil, Colombia, Argentina, California, Japan, Australia, Singapore
Officers
TESCO PLCTESCO PLC · 00445790
  • Christopher Jon Taylor

    Secretary · appointed 14 April 2025

  • Melissa Bethell

    Director · appointed 24 September 2018

The job

The people behind the company

Given a company, officers returns the officers and other registered roles the register publishes, current and historical, exactly as the register records them.

  • Registry roles and appointment dates
  • Current and historical appointments
  • Company-scoped, never person search
A register-published role
Director record

Official register

NameAlex Example
RoleDirector
Appointed12 Jun 2024

Register-sourced

Officer records straight from the register

Officers come from the register's own officer table, with role and appointment dates. Where a register has no officer table, the call returns a clear 409 so your code branches instead of handling an empty list.

  • Officers with registry roles and dates
  • 409 officers_not_available when a register has no officer table
  • Register-sourced only, never person search
Check a register first
United Kingdom
France
Sweden
Germany

Current and historical appointments

Given a company, the officers endpoint returns the people the register records as running it, with their role and their appointment and resignation dates. The list is current and historical, so you can see who is in post now and who was before.

The register is the only source. Nothing here is scraped from a website, and there is no person-search endpoint: officers come back for a company you already hold, which keeps the data inside the scope the register published it in.

What is returned

One call returns one list:

curl "https://api.corpoapi.com/v1/companies/gb/{company_number}/officers"

Each officer carries a name, the role the register assigned, the jurisdiction, and the appointment dates the register holds. We keep only what the register publishes: name, role, dates, and birth year and month as the register publishes them. National identifiers, full dates of birth and residential addresses are dropped when the data is parsed, so personal data stays inside its published scope.

What it costs

Officers is one verified company unless the same company was billed in the previous 24 hours, in which case it is free. That rule exists so a flow that fetches a company and then its officers is not billed twice for one company.

Simple by design

69

Jurisdictions covered

$0.01

Per verified company

1 schema

Consistent company data

Transparent pricing

Pay-as-you go, 1 cent per company, forever.

100 free calls to get started, then $0.01 per verified company. No subscription.

Pay as you go

Usage

$0.01/ company

Pay as you go · No contract

100 free

starter calls · No card

Everything included

  • 100 free calls to get started
  • Search, coverage and usage are always free
  • Failed and ambiguous lookups are never billed
  • REST API and hosted MCP server
Get started

Failed and ambiguous lookups are never billed, and the same company is billed at most once a day.

FAQ

Common questions

Can I look up a person by name?
No. Officers are returned for a company you already have. There are no person-search endpoints, which keeps the data within its published scope.
Where does officer data come from?
From the register itself. Each jurisdiction reports its officer availability on the coverage page, and where there is no officer table the call returns HTTP 409 officers_not_available.
Is officer data personal data?
Yes, so we minimise it. We keep the name, role, dates and the register's birth year and month, and drop national IDs, full dates of birth and addresses at parse time.

Related

Start free with Corpo API

Verify any company from official registers with one API.