we are using Artifactory for quite a while now and discovered that many REST API calls are designed to be used in a blocking way. For example the delete item operation of the REST API can consume a bit more time, if a very large tree has to be deleted. Another example is triggering the garbage collection leads to an API call that can take quite a while; In this case the UI is blocked until the call is finished. Both operation can easily lead to timeouts in various places.
In my eyes both operations can be considered to trigger long running or delayed executed processes. Therefore I would expect them to be implemented or at least be available in an asynchronous fashion.
My proposal to avoid these issues:
Make every (Web) REST-API that cannot be expected to respond fast, because it's a heavy operation/process or the duration depends on the underlying data, available as asynchronous operation.