We have encountered a potential issue / instability with the self link identifier in the PSC snapshots – it seems this identifier stays the same even if a PSC record has been updated with a completely different PSC entity.

… as evident: the self link is the same (and thus the record is considered the same between the two snapshots). However, the registration_number differs, which suggests these are completely different PSC registrations and should be provided with different identifiers?

It's possible we've misunderstood the nature of this self link as an identifier, so clarifications on this behaviour would be greatly appreciated.

Good spot. Did the the etag change between the two dates for this record? In theory (as per documentation) this should change when there's been a change to a record.

It seems that you can't depend on IDs other than as an ID limited to a given company and a given type of PSC. For example there's no endpoint to return details for a PSC-ID without specifying both the company number and the type of PSC. More info in this post:

Good spot. Did the the etag change between the two dates for this record? In theory (as per documentation) this should change when there's been a change to a record.

Yes, it did. I've updated the original post to include this.

We don't currently use the etag field to determine changes, but it sounds like something we should consider using (though not as an identifier).

voracityemail:

It seems that you can't depend on IDs other than as an ID limited to a given company and a given type of PSC. For example there's no endpoint to return details for a PSC-ID without specifying both the company number and the type of PSC. More info in this post:

Thanks for the info and link – that does indeed seem to be the case, which makes it very difficult to reliably update / synchronise known PSC subjects.

Thanks for the response @mfairhurst – good to understand the context behind this scenario.

For what it's worth, when updating from a Sep 2017 snapshot this seems to be occurring for a fair few entries – at least in the order of 10s, possibly 100s or more. I can provide a more accurate number once we've completed a full import on our end and inspected the logs.

Thanks for your previous response about this issue. Could I check if you have any new information about what is causing the instability of the self links or information about what kind of situations this occurs in?

Do you have any plans for changing the way the self links work, or providing any other reliable identifiers for PSC entities?