How to obtain officer_id?

I can’t see, in the documentation or in the results of a query, how to obtain the officer_id.

I’m basically trying to build a network graph (to help Lambeth council more quickly identify rogue landlords). The user searches, for example, an officer name; then all of the appointments for that officer are returned; this is followed by all of the officers for those companies; then all of the companies for those officers; and so on recursively.

Initially I thought the officer_id was the string of numbers/letters in the ‘links’ field in the container resulting from an officer search query, but that doesn’t seem to be person-unique.

Thoughts?

I can’t seem to find the answers here:

Thanks for the help in advance,
Sam

@samantha_s

If you perform an officer search, as per the example below:

https://api.companieshouse.gov.uk/search/officers?q=fairhurst

This returns officers matching the query provided, an example as follows: -

  {
      "title": "Alan FAIRHURST",
      "description": "Total number of appointments 4 - Born October 1952",
      "kind": "searchresults#officer",
      "description_identifiers": [
        "appointment-count",
        "born-on"
      ],
      "address": {
        "country": "TS17 0RE",
        "locality": "Stockton On Tees",
        "region": "Cleveland",
        "address_line_2": "Ingleby Barwick",
        "address_line_1": "1 Farrier Close"
      },
      "address_snippet": "1 Farrier Close, Ingleby Barwick, Stockton On Tees, Cleveland, TS17 0RE",
      "matches": {
        "title": [
          6,
          14
        ],
        "snippet": []
      },
      "date_of_birth": {
        "month": 10,
        "year": 1952
      },
      "appointment_count": 4,
      "links": {
        "self": "/officers/Tb8ZDuH29bITba4Hk4KSv5YieLo/appointments"
      },
      "snippet": ""
    },

With each result there is a link to the appointments for that person. So in the example above the link is

“self”: “/officers/Tb8ZDuH29bITba4Hk4KSv5YieLo/appointments”

This can be followed to retrieve the appointment information, including the companies, for that person: -

https://api.companieshouse.gov.uk/officers/Tb8ZDuH29bITba4Hk4KSv5YieLo/appointments

An extract as follows: -

 {
      "name_elements": {
        "forename": "Alan",
        "surname": "FAIRHURST"
      },
      "officer_role": "director",
      "occupation": "Director",
      "address": {
        "region": "Cleveland",
        "address_line_1": "Coverdale Court",
        "premises": "PO BOX 1949",
        "locality": "Redcar",
        "postal_code": "TS10 4YG",
        "address_line_2": "Wilton International"
      },
      "appointed_on": "2010-03-17",
      "nationality": "British",
      "name": "Alan FAIRHURST",
      "country_of_residence": "England",
      "resigned_on": "2012-05-31",
      "appointed_to": {
        "company_status": "active",
        "company_name": "PROCOMM SITE SERVICES (HOLDINGS) LIMITED",
        "company_number": "07115358"
      },
      "links": {
        "company": "/company/07115358"
      }

The links to the companies can then be followed to navigate to the company information which contains the links to the officers for that company and so on…

As stated the letters/numbers is the officer-id. Can you let me know some examples where this is not person specific?

Thanks,

@mfairhurst

Thanks @mfairhurst for the information - very useful.

I had a bug in my script, which was why it appeared that some officers had non-unique IDs; there’s actually no problems as far as I can tell.

Thanks again,
Sam

Glad to hear that the issue has been resolved.
Great news :smile:

@mfairhurst Is the officer_id really the long alpha numeric character? I thought officer_id was a shorter numeric code. Has there been a change in this field at some point?

For example, this is the same person:
officer_id IKmpj-vhxnlTVzG0fTx524rw97Q
officer_id 906692951

Is the second an old format?

Many Thanks

Hi,

Sorry by bump this topic.
I found same question. Where we can find the officer_id?

I checked services that get information from CH and they have similar ids:

Example:

http://suite.endole.co.uk/insight/people/6376084-mr-richard-bayliss
https://www.companysearchesmadesimple.com/director/uk/906376084/

The ids are similar.

Best Regards,
tc

Not sure where the 9 comes from, but “06376084” matches the first 8 digits of that officer’s 12-digit PERSON-NUMBER field from the daily bulk data files.

Alex - where can one find the daily bulk data files? Please post a link.

Requesting it in this thread seems to be the way to go: