Move cancellation to it's own endpoint