different url generation
call callbacks just once
abort failed requests