I have an app that will cross compare DB contract data to usage data fetched from a web API.
The API returns details for users like "id", "name", "email" and so forth, which we also store on our server/DB ecause we need to tally before billing. But the API side can be modified by our client at any time. My current solution is that I will always treat the API as the source of ground truth.
So if any of the user Id on the API changes and causes a mismatch, there would need to be a manual/automatic adjustment on the database side for the client records.
My question is, is this an appropriate solution?
1. If so, how can this be done with the least amount of human intervention?
2. If not, what is an appropriate solution?
From what I can see, the web API does not provide any endpoints to listen for changes to the user's id.