How to return smaller search results for an Officer search

Hi,

I am trying to build a tool to monitor if a director name appears registered against a company. We’ve had director names from my company fraudulently added to other new companies without our knowledge in the past and I’d like to monitor this.

However, at present your officer search (/search/officers) only allows a query string for the name and I believe your API only returns 400 results before access is blocked. For some names, we are getting 10,000 results (e.g. try a search for “Simon Jones”). So it’s hard to construct a query to return a smaller number of results.

Is it possible to either add more filters to the officer search, or do you have a regularly updated CSV of officer data like the company data at download.companieshouse.gov.uk

best wishes,
Simon

You can request access to the officer data package. The way to do that used to be to add a post to a specific thread but see here:

If you’re interested in monitoring then another way might be to use the Streaming API. You can listen on a connection which will broadcast every e.g. officer update as Companies House register it. Pro - you can filter anything you want and you get this as soon as it’s available. Con - it’s a bit more effort to set up and you have to manage a script which will be running all the time.

If you know the IDs of your officers you can do a lookup based on those unique IDs to get appointments elsewhere. Do a lookup for your officers and you’ll see each entry in the items array has links.officers.appointments with a unique REST stub you can then use to pull back any other appointments linked to your officers. This should be a simple 2 step query because you are now only looking for the officers of your company and not searching by name.

Hopefully this fits your use case. Unfortunately it won’t let me link directly to the Officer lookup spec. It’s the /company/{company_number}/officers REST call.