erasmus-without-paper / ewp-specs-api-iias

Specifications of EWP's Interinstitutional Agreements API.
MIT License
4 stars 13 forks source link

include conditions-hash in the index API #90

Closed JoepDemey closed 1 year ago

JoepDemey commented 1 year ago

Since the implementation of the modified_since parameter in the index API is optional, it would be nice to get both the IIA id's and the corresponding condition-hashes in the index response.

I'm asking this because the CNR API's and the use of those API's are also optional. Therefor, we are forced to periodically check all available IIA's from all partners. We now loop all hei's in the registry and call the index API. For the IIA id's in the response that are new, we call the get API to get the full IIA. But we also need to check the IIA's we already had, because they might have changed. Therefor, getting the conditions-hash too in the index API would make it easier to check if IIA's have changed or not.

umesh-qs commented 1 year ago

@JoepDemey condition only covers limited data set. So it might not help. If any provider is not respecting modified_since parameter, then I believe it is a bigger problem for them, as they would have to deal with more requests.

janinamincer-daszkiewicz commented 1 year ago

CNR APIs are not optional.

JoepDemey commented 1 year ago

From https://github.com/erasmus-without-paper/ewp-specs-api-iia-cnr/tree/v2.0.3: Keep in mind that... It is NOT guaranteed that all notifications will be delivered to you promptly. Some notifications may also not reach you at all, e.g. due to implementation errors on the sending institution's server.

So we can not rely on CNR only, correct?

janinamincer-daszkiewicz commented 1 year ago

You can not rely on anything in the distributed network :) But you can assume that the percentage of lost CNRs (as well as other network messages) is usually very small. Under the assumption that we cannot rely on CNRs we would not need them at all.