I think you should add a transaction resource.
POST /transactions
{
type: "move",
files: [...],
destinies: [...],
}
202 - accepted
{
progress: 0.23,
_links: {
self: {href: "/transactions/123"}
}
}
It could be just temporary, or you could use the collection as an event log. By getting the representation of it with comet or websocket could contain the progress...
I don't think there are any other options, only moving the files one by one, or patching the directory of the files if they contain a property like that...