Are individuals ever moved from 'Officer' to 'Person w/ Significant Control'?

You say “the JSON is blank” and that’s odd since officers shouldn’t disappear from the list, they should get a resigned_on field and increase the inactive_count total. Apologies if you already checked the following but if not and you don’t get a JSON body at all I’d check that your code is working:

  • Are other calls to the API working in your code (to check the API key and your call functionality)?
  • Are you getting an http error?
  • Are the call parameters correct? E.g. you code isn’t restricting the register_type of officers etc. (endpoint documentation)?
  • Maybe check the your example company numbers in CH Beta to ensure that CH haven’t lost them etc. You’d be able to see the officers there including status e.g. active / ceased and the PSCs.

If you are getting some JSON back:

  • What numbers do you have in the active_count and inactive_count members in the main JSON object? If officers “moved to a PSC” I’d have thought a) they’d appear in the inactive_count total and b) the officer entry in the list should have a resigned_on field with the date they resigned.
  • Again you should be able to see the officers and their status in Beta and check also the PSCs there.

Obviously officers may or may not be PSCs (and vice versa) and someone could cease being an officer but still be a PSC (or become one) but I’d expect there still to be an entry in the officers list as explained above. You said you were rechecking ones you’d last seen “back in Dec” so I’m guessing that they shouldn’t have disappeared under the CH “old data” rule (see footnote 1).

Short answer - just request the PSC list to get all PSCs (and their IDs). Then it’s up to you to look through the data and match an officer and a PSC. Yes - the PSC ID and officer ID are unrelated as far as I know.

When checking data it is possible that names / address / DOB information will not correspond for what you know to be the same person. Of course, someone could legitimately have multiple addresses and supply these for their different roles, or supply different versions of their name. See the CH service info / disclaimer - essentially “we supply exactly the data we’re given (unless there’s e.g. nefarious intent) and indeed we are required to do so”.

Further, (as far as I know) neither Officer ID nor PSC ID (for the same person) have any relation between companies.
For officer ID see:

For PSC IDs see:

Footnote 1:
I don’t know about any limits for the officers list but in e.g. the officer appointments list entries do disappear so corporate officers could be affected. However that should only be if it’s over six years from when a company closes / is dissolved. So unless the officers you saw first time were corporate officers and those companies had already closed almost 6 years ago data should still be around.